Edited at

Docker(compose)初学者が困ったときに役立つコマンド集

More than 1 year has passed since last update.

前回の記事

でDockerを触り始めたらDockerfileや、docker-compose

周りをいじくり始めますのでいざやり始めた時に

この時どうするの?

のコマンド集を集めてみます。

尚、初学者なので指摘等ありましたらコメントお願いします。mm


参考にした記事


イメージのビルドでキャッシュを使用したくない場合

キャッシュなしでビルドが実行されます

docker-compose build --no-cache


コンテナを一回削除する

なんかコンテナがうまく起動しないな。と思ったら

docker-compose rm


コンテナがうまく起動しないのでエラーの箇所を確認したい

docker-compose logs

コンテナ名を指定してもいけます

docker-compose logs {コンテナ名}


コンテナが起動しない!!!

まず正常に稼働している状態の docker-compose ps の状態です

$docker-compose ps

Name Command State Ports
-----------------------------------------------------------------------------------
hoge_rails bundle exec rails s -p 300 ... Up 0.0.0.0:3001->3001/tcp
hoge_mysql docker-entrypoint.sh mysqld Up 0.0.0.0:3306->3306/tcp

Stateが Up であれば起動している状態です。

逆にStateが Exit {数字}

だとエラーが発生して起動していない状態です。

その場合のエラー箇所は

docker-compose logs {Name}

でエラー内容を確認できます。

それでもコンテナが起動しない場合は

docker-compose stop

docker-compose rm --force
docker-compose build
docker images | awk '/<none/{print $3}' | xargs docker rmi
docker-compose up

と実行してみてください。

これでコンテナは最新になるはず。(です)


docker images 叩いたら noneがいっぱい

imageをビルドし直すと<none>:<none>なイメージができます。

Dockerにnone:noneなイメージが生まれてくる理由

こんな状態

$docker images 

REPOSITORY TAG IMAGE ID CREATED SIZE
hoge_rails latest 96817ad65925 4 minutes ago 1.01GB
<none> <none> a12f704e8d62 2 hours ago 1.01GB
<none> <none> 58054eb2f0a2 3 hours ago 1.01GB
<none> <none> e11a08ad9320 4 hours ago 1.01GB
<none> <none> 7a72b5b89cfb 6 hours ago 1GB
hoge_mysql latest ebb10baa9a30 26 hours ago 348MB
ruby 2.4.2 47fd5dc7df6e 6 days ago 684MB
ruby 2.3.4-alpine f1ca99f256aa 6 weeks ago 138MB
hoge_mysql latest a0f5d7301767 7 months ago 329MB
mysql 5.6.35 a0f5d7301767 7 months ago 329MB

そうするとDisk容量が逼迫しますので一旦クリーンしましょう

docker images | awk '/<none/{print $3}' | xargs docker rmi


最後に

随時更新していこうかと思っております。