Help us understand the problem. What is going on with this article?

【忘備録】初心者向け Docker で環境構築する際によく使うコマンド

More than 1 year has passed since last update.

目的

新しいプロジェクト先でdockerで環境構築を進めていくため
忘備録として、dockerで環境構築を進めるにあたって自分がよく利用しているコマンド一覧を並べてみる。

納得行く形で環境構築ができたらチュートリアルを書いていこうと思う。

イメージ / コンテナの確認

#イメージ一覧
docker images

#動作中のコンテナ一覧
docker ps

#未動作含めてのコンテナ一覧
docker ps -a

コンテナの実行

docker run centos

動作内容

①Dockerイメージ(centos)がDockerホスト(ローカルリポジトリ)に存在するか確認し、なければDocker Hub(レジストリ)からダウンロードする(docker pull)
②コンテナを作成する (docker create)
③コンテナを実行する (docker start)

実行中のコンテナにシェルで入る

docker exec -it コンテナ名 /bin/bash

デフォルトはフォアグラウンドなので、明示的にバックグランド実行したいときは -d オプションを追加

docker run -d nginx 

--rmコマンドは自動削除 フォアグラウンドで利用したときのみ有効。date や catなどその場限りで確認したいときとかに有効

docker run --rm ubuntu date

コンテナの中でシェルを利用する場合 "-i , -t"オプションで標準出力・疑似端末を有効にする

docker run -it ubuntu /bin/bash

ログを見たい

docker logs dataonly_webserver_1

コンテナにアクセス 

docker exec -it dataonly_webserver_1 bash

削除系

docker images全削除

docker images -aq | xargs docker rmi

コンテナ全削除

docker ps -aq | xargs docker rm

すべてのコンテナを終了する

$ docker kill $(docker ps -a)

すべての終了しているコンテナを削除する

$ docker rm $(docker ps -a -q)

動作しているコンテナを含めて、すべてのコンテナを削除する

$ docker rm-f(docker ps -a -q)

webサーバーとDBサーバーの紐づけ

wordpress と dbサーバーがpullされている状態を前提としている。
下記はwordpressにログインするときに必要なパスワードを明示的に指定している。

mysqlのバージョンによってはうまくいかないときあり。(pull mysqlでやると最新版が8系が取得され、権限の影響でうまくいかなかった。 → mysql 5.6で指定したらうまくいった。)

docker run -d --link db:mysql -p 8080:80 -e WORDPRESS_DB_PASSWORD=password --name web wordpress

イメージ名の編集

docker tag ansible/centos7-ansible ken0830/ansible/centos7-ansible
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした