管理人Kのひとりごと

デジモノレビューやプログラミングや写真など

Docker良く使うコマンドなど

自分用の備忘録。

用語

イメージ

プログラム、ライブラリ、ミドルウェア、OSなどの設定をまとめたコンテナのひな形

レジストリ

イメージ置き場。Docker Hubとか、ECRのほかに、自分でプライベートなレジストリを立てることもできる

よく使うコマンド

Dockerのコマンド(イメージ関係で代表的なもの)

イメージのダウンロード
docker pull <イメージ名>(:タグ名))docker pull centos:latest
イメージの一覧表示
docker images
イメージの詳細情報の表示
docker images <イメージID>
イメージの検索
docker search <検索キーワード>
イメージの削除
docker rmi
イメージをDocker Hubにアップロードする
docker push <イメージ名>(:タグ名)

Dockerのコマンド(コンテナ関係で代表的なもの)

コンテナの作成
docker create 
コンテナの作成→起動
docker run <イメージ名>(:タグ名))docker run -it --name "test1" centos /bin/bash
→「test1」と名前を付けて、centosの最新版のイメージからコンテナを作成し、
 /bin/bashを起動して、ttyを利用し、結果を標準出力に出力する
例)docker run -d -p 8080:80 -v "/tmp/test/:/usr/local/apache2/htdocs/" httpd
→バックグラウンドでhttpdを起動し、コンテナ:80をLocalhost:8080にポートフォワード、
 ローカルの/tmp/testを、コンテナの/usr/local/apache2/htdocsへマウント。
 (ローカルの/tmp/testにおいたHTMLを、localhost:8080で表示できる)
稼働コンテナの一覧表示
docker ps
例)docker ps -a
→停止しているコンテナ含め一覧表示
コンテナの起動
docker start <コンテナID>
稼働中のコンテナにアタッチ
docker attach <コンテナ名>)docker attach test1
稼働中のコンテナから抜ける
Ctrl + p→Ctrl + q
※exitだと、コンテナが終了してしまう
稼働コンテナでプロセスを実行する
docker exec <コンテナID>)docker exec -it fede82fc1826 /bin/cal
→コンテナID「fede82fc1826」に対して/bin/calを実行し、
 結果を標準出力に出力する

docker exec -it <container_id> /bin/bash
→<container_id>のシェルに接続する
稼働コンテナのプロセスを確認する
docker top <コンテナID>
稼働中のコンテナを停止する
docker kill <コンテナID>
コンテナを削除する(≠イメージの削除)
docker rm <コンテナID>
コンテナからイメージを作成する
docker commit <コンテナID> <イメージ名>
コンテナのログを表示する
docker logs <コンテナID>