🐕
Docker初学者のための基本操作まとめ
はじめに
こんにちは、あるいはこんばんは。SIerに生息しているishikiと申します。
最近はポッドキャストにはまっています。
対象読者
この記事では
- Dockerを何となく使っている人
- Dockerをさわる予定がある人
- つまり、昔の自分
を対象にDockerの基本操作をまとめていきます。
「よく使うコマンド一覧が欲しい」という方のお役に立てると幸いです。
dockerコマンド
docker run <イメージ名>
コンテナ新規作成
コマンドオプション | 操作内容 |
---|---|
docker run —name <コンテナ名> <イメージ名>
|
コンテナに任意の名前を付ける |
docker run —name <コンテナ名> —rm <イメージ名>
|
プロセスが終了したらコンテナを削除 |
docker run -it —name <コンテナ名> <イメージ名> /bin/bash
|
コンテナを新規作成&起動&中に入る ※同名コンテナがある場合はエラー |
docker run -v <ホストのパス>:<コンテナのパス> <イメージ名>
|
コンテナにボリュームをマウント(DBデータの永続化) |
docker ps
コンテナ一覧を表示
コマンドオプション | 操作内容 |
---|---|
docker ps -a
|
停止されたコンテナも含む |
docker start/stop/restart <コンテナ名orコンテナID>
コンテナ起動/停止/再起動
docker exec
コンテナ内を操作
コマンド | 操作内容 |
---|---|
docker exec -it <コンテナ名> /bin/bash | コンテナの中に入る |
docker exec <コンテナ名> <コマンド> | コンテナの中に入らず、コンテナ内でコマンド実行する |
docker rm <コンテナ名>
停止中のコンテナを削除
コマンドオプション | 操作内容 |
---|---|
docker rm -f <コンテナ名> |
コンテナを強制削除 |
docker images
コンテナイメージ一覧を表示
docker rmi <コンテナイメージ名>
コンテナイメージを削除 ※起動中コンテナのイメージは削除不可(依存関係がある場合含む)
docker build <ビルド先のパス>
dockerfileからdockerイメージを作成
コマンドオプション | 操作内容 |
---|---|
docker build -t <イメージ名> <ビルド先のパス> |
イメージ名を付けてビルド |
docker cp
コンテナとホストマシンの間でコピーを行う
コマンドオプション | 操作内容 |
---|---|
docker cp <ホストファイルのパス> <コンテナ指定>:<コンテナのパス> | ホスト→コンテナへコピー |
docker cp <コンテナ指定>:<コンテナのパス> <ホストファイルのパス> | コンテナ→ホストマシンへコピー |
docker logs <コンテナ名>
コンテナのログ出力
コマンドオプション | 操作内容 |
---|---|
docker logs -f <コンテナ名> |
コンテナのリアルタイムログ出力 |
Dockerfile記法
記法 | 説明 |
---|---|
RUN <コマンド> | dockerfile→イメージのタイミングでコマンド実行 |
CMD [”a”,”b”,”c”] | イメージ→コンテナのタイミングでコマンド実行 |
COPY <ホストのファイル> <コンテナのパス> | ローカルファイルをイメージに追加する |
ADD <ホストのファイルorURL> <コンテナのパス> | ローカルorネット経由ファイルをイメージに追加する ※非推奨 |
ENV | 環境変数を設定 例)DB情報 |
docker-composeコマンド
コマンド | 操作内容 |
---|---|
docker-compose down
|
docker-compose.ymlで管理されたコンテナを停止&削除 |
docker-compose restart
|
docker-compose.ymlで管理されたコンテナを再起動 |
docker-compose ps
|
docker-compose.ymlで管理されたコンテナ一覧を表示 |
docker-compose run
|
docker-compose.ymlで管理されているサービス1つを指定してコマンドを実行 |
Discussion