- 目的
- 公式
- コンテナの起動
- コンテナを削除せずに停止
- コンテナ停止 & コンテナ、ネットワーク、ボリューム、イメージを削除
- コンテナを強制終了
- コンテナの再起動
- 停止中のコンテナを削除
- コンテナの一覧とステータスを表示
- ログをみる
- サービス内でコマンドを実行
- コンテナのプロセス情報を表示
- バージョンを表示
目的
すぐにコマンドがわからなくなるので、よく使うやつを自分用にまとめておきます。
一部 docker コマンドも記載しています。
公式
基本はここで確認しましょう。
https://docs.docker.jp/index.html
コンテナの起動
サービス用のコンテナを構築、作成、起動、アタッチする
docker-compose.yml と同ディレクトリ内で以下のコマンドを実行
docker-compose up
バックグラウンド実行する場合は -d
オプションをつけて実行
docker-compose up -d
コンテナを選択して実行する場合は最後にサービス名をつけて実行
docker-compose up -d <コンテナ名>
実行例
NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS [root@test244 redmine]# [root@test244 redmine]# docker-compose up -d [+] Building 0.0s (0/0) docker:default [+] Running 2/2 ? Container redmine-db-4.0.4 Started 0.1s ? Container redmine-4.0.4 Started 0.1s [root@test244 redmine]# [root@test244 redmine]# docker-compose ps -a NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS redmine-4.0.4 redmine:4.0.4-alpine "/docker-entrypoint.sh rails server -b 0.0.0.0" redmine 4 seconds ago Up 3 seconds 0.0.0.0:8080->3000/tcp, :::8080->3000/tcp redmine-db-4.0.4 mariadb:10.8.2 "docker-entrypoint.sh mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci" redmine-db-4.0.4 4 seconds ago Up 3 seconds 3306/tcp [root@test244 redmine]#
コンテナを削除せずに停止
docker-compose.yml と同ディレクトリ内で以下のコマンドを実行
docker-compose stop
コンテナを選択して実行する場合は最後にサービス名をつけて実行
docker-compose stop <コンテナ名>
実行例
[root@test244 redmine]# docker-compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS redmine-4.0.4 redmine:4.0.4-alpine "/docker-entrypoint.sh rails server -b 0.0.0.0" redmine 25 seconds ago Up 23 seconds 0.0.0.0:8080->3000/tcp, :::8080->3000/tcp redmine-db-4.0.4 mariadb:10.8.2 "docker-entrypoint.sh mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci" redmine-db-4.0.4 25 seconds ago Up 23 seconds 3306/tcp [root@test244 redmine]# [root@test244 redmine]# docker-compose stop [+] Stopping 2/2 ? Container redmine-db-4.0.4 Stopped 0.9s ? Container redmine-4.0.4 Stopped 0.7s [root@test244 redmine]# [root@test244 redmine]# docker-compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS [root@test244 redmine]# [root@test244 redmine]# docker-compose ps -a NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS redmine-4.0.4 redmine:4.0.4-alpine "/docker-entrypoint.sh rails server -b 0.0.0.0" redmine 47 seconds ago Exited (1) 8 seconds ago redmine-db-4.0.4 mariadb:10.8.2 "docker-entrypoint.sh mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci" redmine-db-4.0.4 47 seconds ago Exited (0) 8 seconds ago [root@test244 redmine]#
コンテナ停止 & コンテナ、ネットワーク、ボリューム、イメージを削除
docker-compose down
コンテナを選択して実行する場合は最後にサービス名をつけて実行
docker-compose down <コンテナ名>
実行例
[root@test244 redmine]# docker-compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS redmine-4.0.4 redmine:4.0.4-alpine "/docker-entrypoint.sh rails server -b 0.0.0.0" redmine About a minute ago Up 9 seconds 0.0.0.0:8080->3000/tcp, :::8080->3000/tcp redmine-db-4.0.4 mariadb:10.8.2 "docker-entrypoint.sh mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci" redmine-db-4.0.4 About a minute ago Up 10 seconds 3306/tcp [root@test244 redmine]# [root@test244 redmine]# docker-compose down [+] Running 3/3 ? Container redmine-db-4.0.4 Removed 0.5s ? Container redmine-4.0.4 Removed 0.4s ? Network redmine_default Removed 0.3s [root@test244 redmine]# [root@test244 redmine]# docker-compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS [root@test244 redmine]# [root@test244 redmine]# docker-compose ps -a NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS [root@test244 redmine]#
コンテナを強制終了
強制終了するのみでコンテナの削除は実施されない。
docker-compose kill
実行例
[root@test244 redmine]# docker-compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS redmine-4.0.4 redmine:4.0.4-alpine "/docker-entrypoint.sh rails server -b 0.0.0.0" redmine 4 seconds ago Up 2 seconds 0.0.0.0:8080->3000/tcp, :::8080->3000/tcp redmine-db-4.0.4 mariadb:10.8.2 "docker-entrypoint.sh mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci" redmine-db-4.0.4 4 seconds ago Up 2 seconds 3306/tcp [root@test244 redmine]# [root@test244 redmine]# docker-compose kill [+] Killing 2/2 ? Container redmine-db-4.0.4 Killed 0.3s ? Container redmine-4.0.4 Killed 0.4s [root@test244 redmine]# [root@test244 redmine]# docker-compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS [root@test244 redmine]# [root@test244 redmine]# docker-compose ps -a NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS redmine-4.0.4 redmine:4.0.4-alpine "/docker-entrypoint.sh rails server -b 0.0.0.0" redmine 16 seconds ago Exited (137) 4 seconds ago redmine-db-4.0.4 mariadb:10.8.2 "docker-entrypoint.sh mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci" redmine-db-4.0.4 16 seconds ago Exited (137) 4 seconds ago [root@test244 redmine]#
コンテナの再起動
docker-compose restart
実行例
[root@test244 redmine]# docker-compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS redmine-4.0.4 redmine:4.0.4-alpine "/docker-entrypoint.sh rails server -b 0.0.0.0" redmine About a minute ago Up 32 seconds 0.0.0.0:8080->3000/tcp, :::8080->3000/tcp redmine-db-4.0.4 mariadb:10.8.2 "docker-entrypoint.sh mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci" redmine-db-4.0.4 About a minute ago Up 32 seconds 3306/tcp [root@test244 redmine]# [root@test244 redmine]# docker-compose restart [+] Restarting 2/2 ? Container redmine-db-4.0.4 Started 1.1s ? Container redmine-4.0.4 Started 1.1s [root@test244 redmine]# [root@test244 redmine]# [root@test244 redmine]# docker-compose ps NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS redmine-4.0.4 redmine:4.0.4-alpine "/docker-entrypoint.sh rails server -b 0.0.0.0" redmine About a minute ago Up 3 seconds 0.0.0.0:8080->3000/tcp, :::8080->3000/tcp redmine-db-4.0.4 mariadb:10.8.2 "docker-entrypoint.sh mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci" redmine-db-4.0.4 About a minute ago Up 3 seconds 3306/tcp [root@test244 redmine]#
停止中のコンテナを削除
docker-compose rm
コンテナを選択して削除する場合にはコマンドの最後に名前をつけて実行
docker-compose rm <コンテナ名>
実行例
[root@test244 redmine]# docker-compose ps -a NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS redmine-4.0.4 redmine:4.0.4-alpine "/docker-entrypoint.sh rails server -b 0.0.0.0" redmine 2 minutes ago Exited (1) 12 seconds ago redmine-db-4.0.4 mariadb:10.8.2 "docker-entrypoint.sh mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci" redmine-db-4.0.4 2 minutes ago Exited (0) 12 seconds ago [root@test244 redmine]# [root@test244 redmine]# docker-compose rm ? Going to remove redmine-4.0.4, redmine-db-4.0.4 Yes [+] Removing 2/0 ? Container redmine-db-4.0.4 Removed 0.0s ? Container redmine-4.0.4 Removed 0.1s [root@test244 redmine]# [root@test244 redmine]# docker-compose ps -a NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS [root@test244 redmine]#
コンテナの一覧とステータスを表示
docker-compose、docker コマンドでそれぞれ ps オプションをつけて実行するが、表示内容に差異があるので確認したい内容によって使い分ける。
コンテナ名、サービス名を確認したい場合
docker-compose ps
以下のように表示される。
[root@test244 redmine]# docker-compose ps -a NAME IMAGE COMMAND SERVICE CREATED STATUS PORTS redmine-4.0.4 redmine:4.0.4-alpine "/docker-entrypoint.sh rails server -b 0.0.0.0" redmine 8 minutes ago Up 8 minutes 0.0.0.0:8080->3000/tcp, :::8080->3000/tcp redmine-db-4.0.4 mariadb:10.8.2 "docker-entrypoint.sh mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci" redmine-db-4.0.4 8 minutes ago Up 8 minutes 3306/tcp [root@test244 redmine]#
コンテナ ID、コンテナ名を確認したい場合
docker ps -a
[root@test244 redmine]# docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES be9b709829a6 mariadb:10.8.2 "docker-entrypoint.s…" 10 minutes ago Up 10 minutes 3306/tcp redmine-db-4.0.4 1e621f8f6f16 redmine:4.0.4-alpine "/docker-entrypoint.…" 10 minutes ago Up 10 minutes 0.0.0.0:8080->3000/tcp, :::8080->3000/tcp redmine-4.0.4 [root@test244 redmine]#
ログをみる
docker-compose logs
foreground で表示し続ける場合は以下。
docker-compose logs -f
表示の終了は Ctrl + c で。
実行例
[root@test244 redmine]# docker-compose logs -f redmine-db-4.0.4 | 2023-10-10 08:06:14+00:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:10.8.2+maria~focal started. redmine-db-4.0.4 | 2023-10-10 08:06:14+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql' redmine-db-4.0.4 | 2023-10-10 08:06:14+00:00 [Note] [Entrypoint]: Entrypoint script for MariaDB Server 1:10.8.2+maria~focal started. redmine-db-4.0.4 | 2023-10-10 08:06:14+00:00 [Note] [Entrypoint]: MariaDB upgrade not required redmine-db-4.0.4 | 2023-10-10 8:06:14 0 [Note] mysqld (server 10.8.2-MariaDB-1:10.8.2+maria~focal) starting as process 1 ... redmine-db-4.0.4 | 2023-10-10 8:06:14 0 [Note] InnoDB: Compressed tables use zlib 1.2.11 redmine-db-4.0.4 | 2023-10-10 8:06:14 0 [Note] InnoDB: Number of transaction pools: 1 redmine-db-4.0.4 | 2023-10-10 8:06:14 0 [Note] InnoDB: Using crc32 + pclmulqdq instructions redmine-db-4.0.4 | 2023-10-10 8:06:14 0 [Note] mysqld: O_TMPFILE is not supported on /tmp (disabling future attempts) redmine-db-4.0.4 | 2023-10-10 8:06:14 0 [Note] InnoDB: Using Linux native AIO redmine-db-4.0.4 | 2023-10-10 8:06:14 0 [Note] InnoDB: Initializing buffer pool, total size = 128.000MiB, chunk size = 2.000MiB redmine-db-4.0.4 | 2023-10-10 8:06:14 0 [Note] InnoDB: Completed initialization of buffer pool redmine-db-4.0.4 | 2023-10-10 8:06:14 0 [Note] InnoDB: Buffered log writes (block size=4096 bytes) redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Note] InnoDB: 128 rollback segments are active. redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Note] InnoDB: Setting file './ibtmp1' size to 12.000MiB. Physically writing the file full; Please wait ... redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Note] InnoDB: File './ibtmp1' size is now 12.000MiB. redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Note] InnoDB: log sequence number 1330483; transaction id 3066 redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Note] InnoDB: Loading buffer pool(s) from /var/lib/mysql/ib_buffer_pool redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Note] Plugin 'FEEDBACK' is disabled. redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Warning] You need to use --log-bin to make --expire-logs-days or --binlog-expire-logs-seconds work. redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Note] Server socket created on IP: '0.0.0.0'. redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Note] Server socket created on IP: '::'. redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Note] mysqld: ready for connections. redmine-db-4.0.4 | Version: '10.8.2-MariaDB-1:10.8.2+maria~focal' socket: '/run/mysqld/mysqld.sock' port: 3306 mariadb.org binary distribution redmine-db-4.0.4 | 2023-10-10 8:06:15 0 [Note] InnoDB: Buffer pool(s) load completed at 231003 8:06:15 redmine-4.0.4 | The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x64-mingw32, x86-mswin32. To add those platforms to the bundle, run `bundle lock --add-platform x86-mingw32 x64-mingw32 x86-mswin32`. redmine-4.0.4 | The Gemfile's dependencies are satisfied redmine-4.0.4 | => Booting WEBrick redmine-4.0.4 | => Rails 5.2.3 application starting in production on http://0.0.0.0:3000 redmine-4.0.4 | => Run `rails server -h` for more startup options redmine-4.0.4 | W, [2023-10-10T08:06:25.683238 #1] WARN -- : Creating scope :system. Overwriting existing method Enumeration.system. redmine-4.0.4 | [2023-10-10 08:06:26] INFO WEBrick 1.4.2 redmine-4.0.4 | [2023-10-10 08:06:26] INFO ruby 2.6.5 (2019-10-01) [x86_64-linux-musl] redmine-4.0.4 | [2023-10-10 08:06:26] INFO WEBrick::HTTPServer#start: pid=1 port=3000 ^Ccanceled [root@test244 redmine]#
サービス内でコマンドを実行
docker-compose exec <サービス名> <コマンド>
実行例
[root@test244 redmine]# docker-compose exec redmine bash bash-5.0# bash-5.0# free -h total used free shared buff/cache available Mem: 740Mi 428Mi 51Mi 1.0Mi 259Mi 192Mi Swap: 1.0Gi 85Mi 938Mi bash-5.0# bash-5.0# exit exit [root@test244 redmine]#
コンテナのプロセス情報を表示
docker-compose top
実行例
[root@test244 redmine]# docker-compose top redmine-4.0.4 UID PID PPID C STIME TTY TIME CMD systemd+ 2719 2698 0 04:06 ? 00:00:04 /usr/local/bin/ruby bin/rails server -b 0.0.0.0 redmine-db-4.0.4 UID PID PPID C STIME TTY TIME CMD systemd+ 2684 2648 0 04:06 ? 00:00:00 mysqld --character-set-server=utf8 --collation-server=utf8_unicode_ci [root@test244 redmine]#
バージョンを表示
docker-compose version
実行例
[root@test244 redmine]# docker-compose version Docker Compose version v2.22.0 [root@test244 redmine]#