よく使う物だけを抜粋したdocker-composeコマンドの使い方とオプションの一覧まとめ

よく使用するものだけを抜粋したdocker-composeコマンド
の一覧まとめをメモしました。
Docker(ドッカー)
Dockerとは
Dockerとはオープンソースのコンテナ型の仮想化技術のプラットフォームになります。
プラットフォームとしてアプリケーションを作成したり、配布したり、実行したりすることができます。
公式サイト
Dockerのインストール手順
Dockerのインストール手順についてはこちらを参照ください。
Mac に Docker Desktop をインストール
CentOS7へDocker環境を構築
docker コマンド
docker コマンドの使い方についてはこちらを参照ください。
docker コマンドの使い方
環境
- Mac OS Big SUR 11.3.1
- docker-compose 1.28.5, build c4eb3a1f
ファイル操作で利用するUnixコマンドについて
基本的なディレクトリ作成やファイル操作はUnixコマンドを利用します。
Unixコマンドについて詳しくはこちらの記事を参考にしてください。
docker-compose(ドッカーコンポーズ)
docker-composeとは?
docker-composeとは複数のDockerコンテナをまとめて立ち上げる機能になります。
docker-compose.yml
ファイルを用意しコマンドを実行することで
そのファイルから設定を読み込んですべてのコンテナサービスを起動することができます。
docker-compose.yaml
docker-compose.yamlの例
簡単なdocker-compose.yamlの紹介の例です。
docker-compose.yamlversion: '3'
services:
app:
image: node:lts # 利用するイメージの指定をします。
container_name: "任意のコンテナ名" # コンテナ名を指定します
volumes:
- ./src:/src # ホストとゲストのディレクトリを同期します。
working_dir: "/src" # commandを実行するディレクトリです。
ports: # ホストとゲストのポートをマッピングします。
- 8080:8080
command: sh -c 'yarn && yarn build && yarn start' # コンテナが立ち上がる際に実行するコマンドを指定します。
restart: always # 再起動時に際立ち上げを実行するかを指定します。
docker-compose コマンド
基本的な使い方
コマンド名→オプション→コマンド→引数の順にコマンドを指定します。
terminal$ docker-compose [-f=<引数>...] [オプション] [コマンド] [引数...]
ヘルプを確認
docker-compose
コマンドの使い方に関する情報を確認します。
terminal$ docker-compose -h
docker-compose build
docker-compose.yml
の内容に基づいてイメージを作成します。
terminal$ docker-compose build
一度build
するとキャッシュが制裁されるため
キャッシュを使わないで再度作成する場合は--nocache
オプションを追加します。
terminal$ docker-compose build --nocache
コンテナ名を引数で直接指定できます。
terminal$ docker-compose build app
docker-compose up
docker-compose.yml
書かれている設定を元にコンテナを作成、起動します。
依存関係やネットワークなどをよしなに調整してくれます。
Dockerfileを指定して立ち上げる場合は事前にdocker-compose buildでイメージを作成する必要があります。
terminal$ docker-compose up
バックグラウンドで起動する場合は-d
オプションを追加します。
terminal$ docker-compose up -d
コンテナ名を引数で直接指定できます。
terminal$ docker-compose up -d app
docker-compose down
docker-compose.yml
に書かれている設定を元にコンテナを停止します。
またコンテナとネットワークも合わせて削除します。
terminal$ docker-compose down
イメージも合わせて削除します。
terminal$ docker-compose down --rmi all
docker-compose kill
docker-compose.yml
に書かれている設定を元にコンテナを強制停止します。
terminal$ docker-compose kill
docker-compose config
docker-compose.yml
の設定を確認します。
terminal$ docker-compose config
docker-compose logs
docker-compose.yml
で立ち上げたコンテナのログを出力します。
terminal$ docker-compose logs
-f
オプションをつけると垂れ流すことができます。
terminal$ docker-compose logs -f
コンテナ名を引数で直接指定できます。
terminal$ docker-compose logs app
docker-compose version
docker-compose
のバージョン情報を確認します。
terminal$ docker-compose version
docker-compose コマンドのオプション
docker-compose -f "ファイルのパス"
docker-compose.yaml
とは別のファイルを指定してコンテナを起動します。
オプションがない場合は docker-compose.yaml
がデフォルトで読み込まれます。
terminal$ docker-compose -f docker-compose.dev.yaml
docker-compose -p "ブロジェクト名"
プロジェクト名を指定してコンテナを起動します。
オプションがない場合はディレクトリ名がデフォルトのプロジェクト名となります。
terminal$ docker-compose -p myproject up
参考文献
- review
愛する勇気を持てば人生が変わる!『幸せになる勇気』岸見一郎・古賀史健のアドラー実践編で真の幸福を手に入れる
- review
週末を変えれば年収も変わる!『世界の一流は「休日」に何をしているのか』越川慎司の一流週末メソッド
- review
新しい自分に会いに行こう!『自分の変え方』村岡大樹の認知科学コーチングで人生リセット
- review
科学革命から AI 時代へ!『サピエンス全史 下巻』ユヴァル・ノア・ハラリが予見する人類の未来
- review
人類はなぜ地球を支配できた?『サピエンス全史 上巻』ユヴァル・ノア・ハラリが解き明かす驚愕の真実
- review
え?世界はこんなに良くなってた!『FACTFULNESS』ハンス・ロスリングが暴く 10 の思い込みの正体