Docker的备忘单
展示中的容器正在启动
查看正在运行的 Docker 容器
显示以前已启动的容器
列出所有已停止及正在运行的容器
启动容器
使用以下命令启动 Docker 容器:docker start [容器ID]。通过上述命令可以确认容器名称。
终止容器
停止Docker容器[コンテナID]
删除容器
删除Docker容器 [コンテナID]
展示图像
Docker镜像
删除图像
删除 Docker 镜像ID为[イメージID]的容器。
使用docker run / docker commit命令创建容器的限制
上一次我介绍了使用 “docker run” 命令来启动Docker容器,并且在容器内可以自由配置软件的安装和服务启动等。但是要将这些配置应用到其他容器中,就需要使用 “docker commit” 命令从Docker容器创建一个新的Docker镜像。
这种方法需要将配置内容记录在文档中,并且手动配置通用镜像或生产环境镜像可能会导致错误。因此,Docker引擎提供了” Dockerfile”文件,用于一次性描述Docker容器的配置,并且可以使用 “docker build” 命令来创建Docker镜像。
Dockerfile的中文翻译: Docker文件
-
- [docker run]コマンドでコンテナを起動し、[docker commit]でイメージを作成して、他のコンテナ
-
- を作成することはできるが、設定の状態がわからない
- そこで、Dockerfileにサーバーの設定の状態を記述し、[docker build]コマンドで立ち上げることにより、新たなコンテナを作成するという手段が存在する
Dockerfile的机制是什么?
- 1行につき1つの操作を{命令}と{引数}でスペース区切りで記述する
# コメント
{命令} {引数}
Dockerfile指令的内容
From -> 元となるDockerイメージの指定
MAINTAINER -> Dockerfileの作成者の情報
RUN -> コマンドの実行
ADD -> ファイル/ディレクトリの追加(ホストマシン上にあるファイルをゲストマシンい移動させる)
CMD -> コンテナの実行コマンド1
ENTRYPOINT -> コンテナの実行コマンド2
WORKDIR -> 作業ディレクトリの指定
ENV -> 環境変数の指定
USER -> 実行ユーザの指定
EXPOSE -> ポートの解放
VOLUME -> ボリュームのマウント
只需要给出一个选项?那么这是Dockerfile的一个例子。
FROM centos
MAINTAINER yyyoshiki <picolt10@gmail.com>
# RUN: build するときに実行される
RUN yum install -y httpd
# ADD: host に存在するファイルを取り込む
ADD ./index.html /va/www/html/
# EXPOSE: Port 80を開ける
EXPOSE 80
# CMD: RUN するときに実行される
# apacheを裏側で起動,FOREGROUNDにすることで起動するまで他は実行しない
CMD ["/usr/sbin/httpd", "-D", "FOREGROUND"]
执行Dockerfile
# -tはイメージが作成されたときに適用するリポジトリ名をつけるためのオプション
# 最後の.は現在いるリポジトリのDockerfileを実行するため
docker build -t yyyoshiki/httpd .
进入通过Docker启动的容器
docker exec -it [コンテナID] bash