Docker compose とは:
以下の様な、個別のコンテナを一括で作成管理をするツールになる。
(個別で、Dokcerfileの実行が不要なので楽)
簡単なイメージ:
project_folder
|-------docker-compose <-----ここにnginxとphpのコンテナ実行に関する記述を記載
|-------nginx
| |----Dockerfile
|-------php
|----Dockerfile
Docker composeの記述方法について:
[image]
イメージを取得
例:
image: ubuntu
[build]
Dockerfile のあるディレクトリのパスを指定する。
例:
build: /path/to/build/dir
[command]
コマンドを使用時に記載
例:
command: bundle exec thin -p 3000
[links]
①コンテナを他のサービスにリンクします。
サービス名とリンク・エイリアス(サービス:エイリアス)を指定できるだけでなく
又は、サービス名(エイリアスとしても使われます)でも指定できます。
例:
links:
- db
- db:database
- redis
②エイリアス名を記述すると、コンテナ内の/etc/hosts の中にサービス名が
追加されるようだ。
例:
172.17.2.186 db
172.17.2.186 database
172.17.2.187 redis
Dockerの環境変数について:
参照先:
①name_PORT
全ての URL です。
例:DB_PORT=tcp://172.17.0.5:5432
②name_PORT_num_protocol
全ての URL です。
例:DB_PORT_5432_TCP=tcp://172.17.0.5:5432
③name_PORT_num_protocol_ADDR
コンテナの IP アドレスです。
例:DB_PORT_5432_TCP_ADDR=172.17.0.5
④name_PORT_num_protocol_PORT
公開するポート番号です。
例:DB_PORT_5432_TCP_PORT=5432
⑤name_PORT_num_protocol_PROTO
プロトコルです(TCP か UDP)。
例:DB_PORT_5432_TCP_PROTO=tcp
⑥name_NAME
コンテナの完全修飾名です。
例:DB_1_NAME=/myapp_web_1/myapp_db_1
0 件のコメント:
コメントを投稿