Docker-基本(1)

1.はじめに:

Dockerは、Go言語に基づくオープンソースアプリケーションコンテナであり、Apache2.0プロトコルに準拠したオープンソースです。Dockerを使用すると、開発者はアプリケーションを軽量でポータブルなコンテナにパッケージ化して、一般的なLinuxマシンに公開できます。コンテナは完全にサンドボックスメカニズムを使用しており、それらの間にインターフェイスはなく、コンテナのパフォーマンスオーバーヘッドは非常に低くなっています。

 

2. Dockerアーキテクチャ:

イメージ:Dockerイメージ、Dockerコンテナーの作成に使用されるテンプレート。

コンテナー:dockerコンテナー、独立して実行される1つまたはグループのアプリケーション。

クライアント:docker client、dockerApiを使用してdockerデーモンと通信します

ホスト:Dockerホスト、Dockerデーモンおよびコンテナー(cetnos、ubuntuなど)を実行するために使用される物理マシンまたは仮想マシン。

レジストリ:Dockerウェアハウス、画像の保存に使用されます。

マシン:VirtualBox、Digital Ocean、MicrosoftAzureなどのDockerのインストールを簡素化するコマンドラインツール

 

3、Dockerの最初の経験

centos7にdockerをインストールします。

yum install -ydockerデフォルトインストール

docker-ceのインストール:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

sudo yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

sudo yum install docker-ce

インストールが成功したかどうかをテストします。servicedockerstart-dockerを起動し、dockerバージョンを表示します。dockerバージョンを表示します。

4:Dockerの従来の使用法:

Docker操作:

        バージョン/情報-docker [バージョン/情報]

容器操作:

        コンテナライフサイクル管理:docker【実行|開始|停止|再起動|強制終了| rm |一時停止|一時停止解除】

        コンテナの操作とメンテナンス:docker【ps | inspect | exec | logs | export | import | port】

        Container rootfsコマンド:docker [commit | cp | diff]

ミラー操作:

        イメージ管理:docker [イメージ| rmi |タグ|ビルド|履歴|保存|インポート]

倉庫業務:

        ミラーウェアハウス:docker [ログイン|プル|プッシュ|シーチャー]

 

5:コンテナの使用

docker run:コンテナを作成してコマンドを実行します

docker create:コンテナを作成しますが、開始しません

-d:コンテナをバックグラウンドで実行します

-i:コンテナをインタラクティブモードで実行します。通常は-tとともに使用します

-p:ポートマッピング。形式は次のとおりです。ホスト(ホスト)ポート:コンテナポート

-t:コンテナの疑似端末を再割り当てします。通常は-iと同時に使用されます。

--name = "zk":コンテナの名前を指定します

--dns 8.8.8.8:コンテナが使用するDNSサーバーを指定します。デフォルトはホストと同じです

-m:コンテナの最大メモリ使用量を設定します

--net = "bridge":ネットワーク接続タイプ、サポートbridge / host / none / container:  4つのタイプ。

--link = []:別のコンテナへのリンクを追加します

--expose = []:ポートまたはポートのグループを開きます

 

 

コンテナは、独立して実行されるアプリケーションまたはアプリケーションのグループ、およびそれらの動作環境です。

        コンテナをインタラクティブに作成し、次のように入力します。dockerrun -it --name centos centos / bin / bash(フォアグラウンドプロセス)

                exit:コンテナを終了して閉じます。

                Ctrl + P + Q:コンテナを閉じずに終了します。

        コンテナーをバックグラウンドで開始します。dockerrun-d--name nginx(コンテナー名)nginx(イメージ名)

        実行中のコンテナーを入力します:docker exec -it nginx / bin / bash

        コンテナのメタデータを表示します:docker inspect nginx

        コンテナポートをホストにバインドします。dockerrun-d-p 8080:80 --name nginx nginx:latest

        ホストファイルディレクトリをコンテナにマウントします。dockerrun-dit-v / root / peter_dir /; / pdir --name cent centos

        ホストファイルをコンテナにコピーします 。dockerrun-dit-v / root / peter_dir /:/ pdir --name cent centos

ホストファイルディレクトリをコンテナにコピーします:docker cp anaconda-ks.cfg 

ホストファイルをコンテナにコピーします:docker cp anaconda-ks.cfg cent:/ var

 

6.倉庫での使用:

        リポジトリはミラーイメージが一元的に保存される場所です

        Docker公式ウェアハウス:https://hub.docker.com、無料登録、メールアクティベーション

        一般的なコマンド:Docker pull / search / login / push / tag

        タグ:ローカルミラーにマークを付けて倉庫に入れます

        プッシュ:画像をウェアハウスにプッシュします---ログインが必要です

        検索:倉庫内のミラーを照会します---タグバージョンが見つかりません

        プル:ミラーイメージをローカルにダウンロードします

        ログイン:倉庫にログインします

7.プライベート倉庫の使用:

        レジストリイメージを使用してプライベートウェアハウスを作成し、レジストリイメージをダウンロードします:docker pull Registry

ダウンロードを加速するための構成可能なアクセラレータ

        vi /etc/docker/daemon.json

{{

       "bip": "127.17.5.1/24"、

       "registry-mirrors":["https://registry.docker-cn.com"]

}

開始:docker run -d --name reg -p 5000:5000レジストリ

で設定したHTTP伝送:systemctlデーモンリロード| systemctl再起動ドッカ

vi /etc/docker/daemon.json

{{

       "bip": "127.17.5.1/24"、

       "registry-mirrors":["https://registry.docker-cn.com"]、

        "insecure-registries":["192.168.244.5:5000"]

}

docker tag hello-world http://192.168.244.5:5000/hello-world

docker push 192.168.244.5:5000/hello-world

クエリ:curl http://192.168.244.5:5000/v2/_catalog | http://192.168.244.5:5000/v2/hello-world/tags/list

 

 

 

   

 

 

 

 

 

 

 

 

 

おすすめ

転載: blog.csdn.net/csdnbeyoung/article/details/90670319