概要
あったらいいなDockerオプション設定一覧の作成
抜けている部分もあります。
詳細は公式リファレンスを確認してください。
オプション設定表
docker-compose | Dockerfile | 意味 |
---|---|---|
build | 構築時に適用するオプションを指定します。 | |
context | Dockerfile があるディレクトリのパスや Git リポジトリの URL を指定(相対パス) | |
dockerfile | Dockerfile の代わりになるものです。 | |
args | ARG | 構築時に build のオプション(args)を追加。値によって環境構築を変える時に利用 |
cap_add, cap_drop | コンテナのケーパビリティ(capabilities)を追加・削除する | |
command | CMD | デフォルトのコマンドを上書きする |
cgroup_parent | コンテナに対し、オプションの親グループを指定します。 | |
container_name | デフォルトで生成される名前の代わりに、カスタム・コンテナ名を指定します。 | |
devices | デバイス・マッピングの一覧を表示します。docker クライアントで作成する際の --device と同じ形式を使います。 | |
depends_on | サービス間の依存関係を指定する。docker-compose up の場合、 依存関係のある順番に従ってサービスを起動します。docker-compose up サービス(の名称) の場合、自動的に サービス の依存関係を処理します。 |
|
dns | DNS サーバの設定を変更します。 | |
dns_search | DNS の検索ドメインを変更します。 | |
tmpfs | コンテナ内にテンポラリ・ファイルシステムをマウントします。 | |
entrypoint | ENTRYPOINT | デフォルトの entrypoint を上書きします。 |
env_file | ファイル上の定義から環境変数を追加します。 | |
environment | ENV | 環境変数を追加します。 |
expose | EXPOSE | ホストマシン上で公開するポートを指定せずに、コンテナの公開(露出)用のポート番号を指定します。 これらはリンクされたサービス間でのみアクセス可能になります。内部で使うポートのみ指定できます。 |
extends | 現在のファイルから別のファイルにサービスを拡張するもので、設定のオプションを追加します。 | |
external_links | 対象の docker-compose.yml の外にあるコンテナだけでなく、Compose の外にあるコンテナとリンクします。 | |
extra_hosts | ホスト名を割り当てます。 | |
image | コンテナを実行時に元となるイメージを指定します。 | |
labels | LABEL | Docker ラベル を使いコンテナにメタデータを追加します。 |
links | コンテナを他のサービスとリンクします。 | |
logging | サービスに対してログ記録の設定をします。 | |
network_mode | ネットワーク・モードです。 docker クライアントで --net パラメータを使うのと同じ働きです | |
networks | ネットワークに参加する時、トップ・レベルの network キー のエントリを参照します。 | |
aliases | エイリアス(ホスト名の別名)は、ネットワーク上のサービスに対してです。同一ネットワーク上の他のコンテナが、サービス名またはこのエイリアスを使い、サービスのコンテナの1つに接続します。 | |
IPv4 アドレス、IPv6 アドレス | サービスをネットワークに追加する時、コンテナに対して静的な IP アドレスを割り当てます。 | |
pid | PID モードはホストの PID モードを設定します。有効化したら、コンテナとホスト・オペレーティング・システム間で PID アドレス空間を共有します。 コンテナにこのフラグを付けて起動したら、他のコンテナからアクセスできるだけでなく、ベアメタル・マシン上の名前空間などから操作できるようになります。 |
|
ports | 公開用のポートです。 ホスト側とコンテナ側の両方のポートを指定( ホスト側:コンテナ側 )できるだけでなく、コンテナ側のポートのみも指定できます(ホスト側はランダムなポートが選ばれます)。 |
|
security_opt | 各コンテナに対するデフォルトのラベリング・スキーマ(labeling scheme)を上書きします。 | |
stop_signal | コンテナに対して別の停止シグナルを設定します。デフォルトでは stop で SIGTERM を使います。 stop_signal で別のシグナルを指定したら、 stop 実行時にそのシグナルを送信します | |
ulimits | コンテナのデフォルト ulimits を上書きします。 | |
volumes, volume_driver | VOLUME | マウント・パスまたは名前を付けたボリュームは、オプションでホストマシン( ホスト:コンテナ )上のパス指定や、アクセス・モード( ホスト:コンテナ:rw ) を指定できます。 |
volumes_from | 他のサービスやコンテナ上のボリュームをマウントします。オプションで、読み込み専用のアクセス( ro )や読み書き( rw )を指定できます。 | |
MAINTAINER | 生成するイメージの Author (作者)フィールドを指定します。 | |
RUN | 既存イメージ上の新しいレイヤで、あらゆるコマンドを実行し、その結果をコミットする命令です。コミットの結果得られたイメージは、 Dockerfile の次のステップで使われます。 | |
COPY | <ソース> にある新しいファイルやディレクトリをコピーするもので、コンテナ内のファイルシステム上にある <送信先> に指定されたパスに追加します。 | |
USER | ユーザ名か UID を使います。 | |
WORKDIR | Dockerfile で RUN 、 CMD 、 ENTRYPOINT 、 COPY 、 ADD 命令実行時の作業ディレクトリ(working directory)を指定します。もし WORKDIR が存在しなければ、 Dockerfile 命令内で使用しなくてもディレクトリを作成します。 | |
ONBUILD | メージに対して最終的に実行する トリガ 命令を追加します。 | |
STOPSIGNAL | コンテナを終了する時に送信するための、システム・コール・シグナルを設定します。 | |
HEALTHCHECK | ・HEALTHCHECK [オプション] CMD コマンド (コンテナ内でコマンドを実行して、コンテナの正常性を確認) ・HEALTHCHECK NONE (ベース・イメージからのヘルスチェック継承を無効化) |
|
SHELL | シェル形式でコマンド実行時における、デフォルトのシェルを上書きします。 |
おわりに
Dockerfile
, docker-compose.yml
で設定可能なオプションについてまとめました。