167
173

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

docker-composeコマンド

Last updated at Posted at 2018-03-13

概要

個人的によく使うdocker-comopse コマンドをまとめます

コマンド一覧

コマンド 説明
build サービスのimageをビルド
restart サービスを再起動
run サービスを起動
up サービスのimageをビルド&起動
exec サービスに対してコマンドを実行
logs サービスのログを出力
stop サービスを停止させる
kill サービスをkillする

build

全てのサービスをビルドする

docker-compose build

サービス名を指定してビルドすることもできます

例: railsをビルド

docker-compose build rails

up

全てのサービスを起動する

docker-compose up

-d を指定してデーモン状態で起動することもできます

docker-compose up -d

サービス名を指定して起動することもできます

例: railsを起動

docker-compose up rails

or

docker-compose up -d rails

exec ( or run )

exec ( or run ) コマンドを使って、コンテナ内のサービスに対してコマンドを実行できます

docker-compose + exec ( or run )  + サービス名 + 実行したいコマンド

いくつか例を上げてみます

macOS上のコマンド docker-composeコマンド サービス名 コンテナ内で実行するコマンド
dbコンテナに入る docker-compose exec db bash
railsコンテナに入る docker-compose exec rails bash
bundle installをする docker-compose exec rails bundle install
db:create をする docker-compose run rails db:create
db:migrate をする docker-compose exec rails db:migrate
rspecを実行する docker-compose exec rails bundle exec rspec

run を指定して実行した場合は新しくコンテナを立ち上げてから実行し、 exec を指定して実行した場合は既に立ち上がっているコンテナを使って実行します

※ runコマンドを使う場合は、runの後に--rmオプションをつけることをオススメします
--rm をつけて実行すると、コンテナ終了時に自動で起動したコンテナを削除してくれます

例: 終了後に自動でコンテナが削除されるようにrailsコンテナでrails consoleを起動する

docker-compose run --rm rails rails console

logs

全てのサービスのログを出力する

docker-compose logs

サービス名を指定して出力することもできます

docker-compose logs rails

stop

全てのサービスを停止する

docker-compose stop

サービス名を指定して出力することもできます

docker-compose stop nginx

kill

全てのサービスをkillする

docker-compose kill

サービス名を指定してkillすることもできます

docker-compose kill rails
167
173
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
167
173

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?