1
1

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 1 year has passed since last update.

仕事でよく使うDockerコマンド

Last updated at Posted at 2022-03-22

最近、docker環境内でSLAMの環境を構築したので、そのときに使用したdockerコマンドをメモしておく。

dockerコマンド

Dockerfileからdockerイメージを作成

docker build -t [保存したいイメージ名]:[保存したいタグ名] [Dockerfileがあるディレクトリパス]

dockerイメージをもとに、dokerコンテナを起動する。

  • オプションrmをつけてコンテナ終了時にそのコンテナを自動的に削除する。
  • オプションitをつけて、ターミナル入力を可能にする
  • vオプションと、$(pwd):/homeをつけて、docker環境内の/homeディレクトリ内から、ホスト側(dockerを起動している端末側)の現在いるディレクトリに接続して、ファイルを共有する事が出来る。これをホスト側のファイルをコンテナ側にマウントするという。利用例としては、エッジ開発時など容量の少ない端末上で開発環境を整えたいときなどに、ソースコードをホスト側に置き、docker内にビルドする(docker内に実行ファイルを作る)などの事が出来る。マウントは複数ヶ所にできる。
  • nameオプションでコンテナをイメージとタグに名前をつけることが出来る。
docker run --rm -it -v $(pwd):/home --name [コンテナ名] [イメージ名]:[タグ名]

実行中のコンテナを一覧表示

docker ps

過去に実行したコンテナすべてを表示

docker ps -a

保存されているdockerイメージの一覧表示

docker images

実行中のコンテナから一時的に抜ける(コンテナは起動したまま)。

Ctrl + p -> Ctrl + q

上のコマンドで抜けたコンテナ環境に再度入る

docker attach [コンテナID or コンテナ名]

コンテナを停止する

docker stop [コンテナ名]

コンテナを削除する

docker rm [コンテナID]

dockerコンテナの保存

  • タグ名にはlatestなどの名前をよく用いている
docker commit [起動時に名付けたコンテナ名] [保存したいイメージ名]:[タグ名]

保存されたか確認

docker images

ファイルをホストからコンテナへコピーする

docker cp file-path [コンテナID]:path

dockerイメージをtarファイルに出力(testimage.tarファイルに保存してみる) 

- 他の端末に作り上げたdocker環境を移すときなどに使用する
- docker環境のバックアップにも使える
docker save -o [dockerイメージ名] ~> testimage.tar

tarファイルをdockerイメージに戻す(解凍)

docker load <- testimage.tar

dockerプロセスを切る

exit

再度、exitで切ったプロセスを開始

docker ps -a -> docker restart [container ID]

参照

1
1
1

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
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?