Docker笔记
Docker 基本指令
docker run <コンテナ名>[:version | :latest]
# run は以下のコマンド1-3を順に実行している
# 1. イメージ取得
docker pull <コンテナ名>
# 2. コンテナ作成
docker create <コンテナ名>
# 3. コンテナ起動
docker start <コンテナ名>
# コンテナ停止
docker stop <コンテナ名>
# コンテナのディレクトリをホストにコピー
docker cp <コンテナID>:<コンテナのディレクトリ> <ホストのディレクトリ>
# ホストのディレクトリをコンテナのディレクトリにコピー
docker cp <ホストのディレクトリ> <コンテナID>:<コンテナのディレクトリ>
# コンテナへのシェル接続(PID 1プロセスへの接続)
# exitで抜けるとコンテナが停止する。Ctr + p + q でコンテナは起動したまま抜けられる
docker attache <コンテナID>
# コンテナへのシェル接続(新しいプロセスへの接続)
# exitで抜けてもコンテナは起動したまま
docker exec <コンテナID>
在中国的本地化docker运行选项
-p <ホストのポート>:<コンテナのポート> :ポートフォワーディング
docker run -p 8080:80 nginx
-d:detachedモード、バックグラウンド実行みたいなこと。ターミナル終了してもプロセスは生きたまま
--name:コンテナ名指定
-v <ホストのディレクトリ>:<コンテナのマウントポイント>:<オプション>
docker run --name sample -v /usr/local/html:/usr/share/nginx/html:ro -d -p 8080:80 nginx
-t:pseudo-TTYを割り当てる
-i:標準入力を保持する
# ダウンロード済みDockerイメージ一覧
docker images
# Dockerイメージの削除コマンド
docker rmi <コンテナ名>
-f : 強制削除
# 実行中のコンテナのリスト表示
docker ps
# 停止中のコンテナを含めて表示
docker ps -a
# コンテナ削除コマンド
docker rm <コンテナ名>
# イメージ詳細
docker inspect <コンテナ名>
# イマージのビルド
# -t <イメージ名>:イメージ名、タグ名の指定
# <ビルドコンテキスト>:ここで指定したディレクトリがDockerデーモンに転送される。
# ドットを指定すると、コマンド実行したディレクトリがビルドコンテキストとなる。
# ビルドコンテキスト上にあるファイルのみがDockerイメージに取り込み可能。
docker build -t <イメージ名> <ビルドコンテキスト>
Dockerfile (中文译:镜像文件)
Docker镜像是基于Dockerfile创建的。
-
- Dockerfile:用于定义镜像创建的文件
-
- Docker镜像:用于创建容器的模板
- 容器:应用程序的运行环境
Docker Hub:https://hub.docker.com
指令
从某地到另一个地方
指定要使用新的Docker图像作为基础图像。(基础图像)
跑步
指定在创建映像时执行的命令。
CMD命令
在执行容器时,可以指定默认运行的命令。
如果在docker run命令的镜像名称后指定了命令,则会覆盖CMD指令并执行。
入口点
与CMD命令不同的是,如果在docker run命令的映像名称后面指定了命令,则会将docker run命令中指定的命令作为ENTRYPOINT的命令参数传递,并执行该命令。
环境
定义设置环境变量的图像。
可以将以下内容以汉语为母语进行改述,只需要提供一种选择:
参数
构建映像时暂时使用的环境变量。与 EVN 不同,这些环境变量不会保留在映像上。
用户
指定运行容器内命令的用户。若省略,则以root用户执行。
工作目录
使用它来改变工作目录。
增添
指定将本地文件复制到镜像。
也可以指定tar文件或URL。
复制
指定将本地文件复制到映像。
无法指定tar文件或URL。
参考文献
- 『ITエンジニアになる!チャレンジDocker仮想環境構築入門』秀和システム