Dockerを使用しているが docker-compose
を使っていて純粋なdocker
コマンドを忘れてたの覚書として残します。
>$docker version
Client: Docker Engine - Community
Version: 18.09.1
API version: 1.39
Go version: go1.10.6
Git commit: 4c52b90
Built: Wed Jan 9 19:33:12 2019
OS/Arch: darwin/amd64
Experimental: false
Server: Docker Engine - Community
Engine:
Version: 18.09.1
API version: 1.39 (minimum version 1.12)
Go version: go1.10.6
Git commit: 4c52b90
Built: Wed Jan 9 19:41:49 2019
OS/Arch: linux/amd64
Experimental: false
ビルド
- Dockerfileを指定する時は
-f
、イメージ名は-t
(イメージ名:タグ)
$docker build -f XXX/Dockerfile -t イメージ名 .
- キャッシュを使用しない
--no-cache=true
, イメージも再取得--pull=true
$docker build -f XXX/Dockerfile --no-cache=true -t イメージ名 .
// デフォルトはfalse
$docker build -f XXX/Dockerfile --pull=true -t イメージ名 .
// デフォルトはfalse
- ビルド失敗時に中間コンテナ削除
--force-rm=true
、 ビルド成功後中間コンテナを削除--rm=true
$docker build -f XXX/Dockerfile --force-rm=true -t イメージ名 .
// デフォルトはfalse
$docker build -f XXX/Dockerfile --rm=true -t イメージ名 .
// デフォルトはture
コンテナ起動(RUN)
- dockerを作ってログイン
-it
、バックグランドで実行-d
$docker run -it IMAGE bash
$docker run -d IMAGE bash
ホストと同期(マウント)する、ポート
$docker run -it IMAGE -v ホスト側:コンテナ側 bash
$docker run -d IMAGE bash
コンテナ名をつける
--name
docker run -it IMAGE bash