Docker Component導入サービス
[toc]
Docker Component導入サービス
需要分析:
もし今私たちの手にたくさんの容器があれば、各容器は各サービスに対応して、nginx容器、redis容器、mysql容器などがあります.今、私たちはロット量子化の管理、ロット起動、停止、再起動などの操作が必要です.
docker composeは、linuxのshellスクリプトと同様に、コンテナの起動、停止、再起動などの操作を迅速かつ効率的に管理できます.yaml構文に基づいて、アプリケーションのアーキテクチャ、例えばミラー、データボリューム、ネットワークモード、リスニングポートなどの情報を記述することができます.1つのcomposeファイルで複数のコンテナのアプリケーション(jumpserverなど)を定義し、composeを使用してアプリケーションを起動できます.
composeのインストール方法は次のとおりです.
ダウンロードしたファイルは/usr/local/bin/の下に置いて使いやすいです
ComponentはVersion 1とVersion 2を区別する(Component 1.6.0+,Docker Engine 1.10.0+).
Version 2は、より多くの命令をサポートします.Version 1はバージョンデフォルトが「version 1」であることを宣言していません.Version 1は将来廃棄されます.
docker composeマネージャの定義
詳細:
検査テスト:コンテナの起動
エラーを報告、ミラーが存在しない、メタ編集ファイルを修正
docker-composeヘルプの表示
docker-compose構文のリファレンスドキュメントについてhttp://www.web3.xin/index/article/182.html
docker composeマネージャを定義します.つまりymlファイルを編集し、LNMPのサービスnginx、php、mysqlを3つのコンテナに分けることができます.
nginxの下のlinks:別名を作ってphpにアクセスしやすい
Docker Component導入サービス
需要分析:
もし今私たちの手にたくさんの容器があれば、各容器は各サービスに対応して、nginx容器、redis容器、mysql容器などがあります.今、私たちはロット量子化の管理、ロット起動、停止、再起動などの操作が必要です.
docker composeは、linuxのshellスクリプトと同様に、コンテナの起動、停止、再起動などの操作を迅速かつ効率的に管理できます.yaml構文に基づいて、アプリケーションのアーキテクチャ、例えばミラー、データボリューム、ネットワークモード、リスニングポートなどの情報を記述することができます.1つのcomposeファイルで複数のコンテナのアプリケーション(jumpserverなど)を定義し、composeを使用してアプリケーションを起動できます.
composeのインストール方法は次のとおりです.
ダウンロードしたファイルは/usr/local/bin/の下に置いて使いやすいです
curl -L https://github.com/docker/compose/releases/download/1.17.0-rc1/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
chmod 755 !$
docker-compose version
ComponentはVersion 1とVersion 2を区別する(Component 1.6.0+,Docker Engine 1.10.0+).
Version 2は、より多くの命令をサポートします.Version 1はバージョンデフォルトが「version 1」であることを宣言していません.Version 1は将来廃棄されます.
[root@xavi ~]# docker-compose version
-bash: /usr/local/bin/docker-compose:
[root@xavi ~]# chmod 777 /usr/local/bin/docker-compose
[root@xavi ~]# docker-compose version
docker-compose version 1.17.0-rc1, build a0f95af
docker-py version: 2.5.1
CPython version: 2.7.13
OpenSSL version: OpenSSL 1.0.1t 3 May 2016
docker composeマネージャの定義
[root@xavi ~]# vim docker-compose.yml
version: "2"
services:
app1:
image: centos6_x64
ports:
- "8080:80"
networks:
- "net1"
volumes: //
- /data/:/data
app2:
image: centos_nginx_n
networks:
- "net2"
volumes:
- /data/:/data1
entrypoint: tail -f /etc/passwd
networks:
net1:
driver: bridge
net2:
driver: bridge
詳細:
version: "2" // 2
services: //
app1: //app1 1
image: centos //images ,
ports: //
- "8080:80" // 8080 80
networks: // ( bridge )
- "net1" // net1( pipwork ? none )
volumes: //-v
- /data/:/data // , data
app2: // 2
image: centos_nginx //docker images images
networks:
- "net2"
volumes:
- /data/:/data1
entrypoint: tail -f /etc/passwd // BUG ,
networks:
net1: //
driver: bridge //
net2:
driver: bridge
検査テスト:コンテナの起動
[root@xavi ~]# docker-compose up -d
Creating network "root_net2" with driver "bridge"
Creating network "root_net1" with driver "bridge"
Pulling app2 (centos_nginx_n:latest)...
ERROR: pull access denied for centos_nginx_n, repository does not exist or may require 'docker login'
エラーを報告、ミラーが存在しない、メタ編集ファイルを修正
[root@xavi ~]# docker-compose up -d
Creating root_app2_1 ...
Creating root_app1_1 ...
Creating root_app2_1
Creating root_app1_1 ... done
docker-composeヘルプの表示
docker-compose --help
docker-compose構文のリファレンスドキュメントについてhttp://www.web3.xin/index/article/182.html
[root@xavi ~]# docker-compose ps
Name Command State Ports
---------------------------------------------------
root_app1_1 /bin/bash Exit 0
root_app2_1 tail -f /etc/passwd Up 80/tcp
docker composeマネージャを定義します.つまりymlファイルを編集し、LNMPのサービスnginx、php、mysqlを3つのコンテナに分けることができます.
nginxの下のlinks:別名を作ってphpにアクセスしやすい