ちょっとコンテナ試したいときにいつも忘れてるので
1
$ docker build -t some-name .
docker build
Dockerfileからコンテナイメージ作成
-t
コンテナイメージ名を指定
コロン:
で区切って指定すると 名前:タグ
に。区切らなければタグはlatest
.
Dockerfileのパス
他にも
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$ docker build -h
Usage: docker build [OPTIONS] PATH | URL | -
Options:
--add-host list Add a custom host-to-IP mapping (host:ip)
--build-arg list Set build-time variables
--cache-from strings Images to consider as cache sources
--disable-content-trust Skip image verification (default true)
-f, --file string Name of the Dockerfile (Default is 'PATH/Dockerfile')
--iidfile string Write the image ID to the file
--isolation string Container isolation technology
--label list Set metadata for an image
--network string Set the networking mode for the RUN instructions during build (default "default")
--no-cache Do not use cache when building the image
-o, --output stringArray Output destination (format: type=local,dest=path)
--platform string Set platform if server is multi-platform capable
--progress string Set type of progress output (auto, plain, tty). Use plain to show container output (default "auto")
--pull Always attempt to pull a newer version of the image
-q, --quiet Suppress the build output and print image ID on success
--secret stringArray Secret file to expose to the build (only if BuildKit enabled): id=mysecret,src=/local/secret
--ssh stringArray SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: default|<id>[=<socket>|<key>[,<key>]])
-t, --tag list Name and optionally a tag in the 'name:tag' format
--target string Set the target build stage to build.
1
$ docker run --name some-mysql -e MYSQL_USER=root -e MYSQL_ROOT_PASSWORD=password -e MYSQL_DATABASE=some_database mysql:5.7
docker run
コンテナ立ち上げ
--name
コンテナ名を指定
-e
環境変数を指定
上記の場合user: root/password を作成してsome_database というdatabaseを作成します
rails db:create とか必要なくなるので便利
mysql:5.7
コンテナイメージを指定
1
$ docker exec -it some-mysql bash
docker exec
実行中のコンテナでコマンドを実行
-i
標準入力を受け付けるように
-t
疑似ターミナルの割り当て
ターミナルからSSHしたように振る舞える
some-mysql
コンテナ名を指定
bash
実行コマンド
コメント