Docker

【Docker】docker-composeの使い方

docker-compose.yamlの書き方

コンテナ名の指定

version: "3"
services:
    [ サービス名 ]:
        container_name: [ コンテナ名 ]

dockerイメージの指定

# 公式のイメージを指定したい場合
image: [ イメージ名 ]
# Dockerfileを指定してイメージをビルドしたい場合
build:
    context: [ Dockerfileのパス ]
    dockerfile: [ Dockerfile名 ] # 任意のDockerfile名を使用している場合は指定

ディレクトリをマウント

# ホストのディレクトリのマウントする場合
volumes:
    - [ ホスト側のディレクトリパス ] : [ コンテナ側のディレクトリパス ]
# 別のコンテナのディレクトリをマウントする場合
volumes_from:
    - [ コンテナ名 ]

実行するコマンドを指定

command: [ コンテナ生成後にコンテナ内で実行するコマンド ]
entrypoint:

コンテナ間の通信

# 他のコンテナと通信(指定したコンテナの情報が取得可能)
links:
    - [ サービス名 ]
# ホスト側へ解放したい場合(ホスト側からアクセス可能)
ports:
    - [ ホストマシンのポート ] : [ コンテナのポート ]
# linksで指定したコンテナへ解放したい場合(ホスト側からアクセス不可)
 expose:
    - [ 解放するコンテナのポート ]

コンテナを起動する順番

# サービス間の依存関係を定義(コンテナの開始順序を指定するため)
 depends_on:
     - [ サービス名 ]

コンテナ内で使用する環境変数

# ここで環境変数したい場合(yaml配列形式 or ハッシュ形式)
environment:
    [ 変数名 ] : [ 値 ]
    - [ 変数名 ]=[ 値 ]
# 環境変数を記述したファイルで指定したい場合
env_file:
    - [ ファイル名 ]

docker-composeによる複数コンテナの操作

編集中です。

COMMENT

メールアドレスが公開されることはありません。