Docker基本指令的本地中文解释如下:
拉取Docker镜像{镜像名称}
删除镜像
docker image rm {镜像名称}
镜像列表
展示图像的详细信息
docker image inspect {图像ID}
使用镜像执行容器
docker container run –name {容器名称} {镜像ID}
イメージからボリュームに接続してコンテナ実行
docker container run -v {ボリューム名}:{コンテナ内の絶対パス} {イメージ名}
连接到主机文件夹并运行容器(绑定挂载)
docker 容器运行 -v {主机绝对路径}:{容器内绝对路径} {镜像名}
使用映像将端口配置到容器中并执行
docker容器运行 -p {主机端口}:{容器端口} {映像名称}
使用映像容器执行命令,并在执行命令后删除容器
docker container run –rm -it {映像ID} {命令(ls等)}
在图像模式下运行容器
docker容器运行 -it -d {图像ID} {命令等}
使用指定网络来运行容器(如果未指定则连接到“bridge”)
docker container run -it -d –network {网络名称} {镜像ID}
删除容器
docker container rm {容器ID}
即使容器正在运行,也可以强制删除
docker container rm -f {容器ID}
一次性删除已停止的容器
列出所有容器
docker container ls -a
开始运行容器
docker container start {容器ID}
停止容器
docker container stop {容器ID}
进入正在运行的容器
docker container exec -it {容器ID} bash
创建一个卷
使用Docker命令创建卷,格式为:docker volume create {卷名称}。
显示卷槽
docker卷槽列表 {卷槽名称}
显示卷的详细信息
docker volume inspect {卷名称}
删除卷
docker volume rm {卷名}
展示网络列表
docker 网络清单
显示网络的详细信息
docker network inspect {网络名称}
创建一个网络
docker network create {网络名称}
ネットワークを削除する
docker network rm {ネットワーク名}
使用Dockerfile构建Docker镜像,命令为docker image build {Dockerfile路径}。
在构建时,从Dockerfile命名并执行。
docker image build -t {repository_name(任意的名字)}:{tag_name}(任意的名字) {Dockerfile路径}
将Dockerfile和构建上下文从Dockerfile指定为分离的。
使用-f选项,构建Docker镜像:`docker image build -f ./hoge/Dockerfile .`
Dockerfile
※RUN在创建镜像时执行
※CMD在容器运行时执行
※ENV被设置为环境变量
FROM {イメージ名} 例:ubuntu:20.04
RUN apt update && ¥
apt install vim
CMD ["ls","-a"]
COPY ./hoge.txt /opt/
ENV hoge="hogehoge"
在执行命令时向变量传递参数
ARG仅在构建时执行
docker image build –build-arg hoge=”hogehoge” . -> 在构建过程中使用参数向变量 hoge 传递 “hogehoge” 值
当使用上述命令在此Dockerfile上执行时,容器运行时会显示“hogehoge”。
FROM ubuntu:20:04
ARG hoge
RUN echo $hoge > hoge.txt
CMD ["cat", "hoge.txt]
更改工作目录,opt下创建hoge.txt。
FROM ubuntu:20:04
WORKDIR /opt
RUN touch hoge.txt
在多阶段构建中,使用“–from=0”来指定首次出现的FROM。
FROM gcc:xx.x.x
WORKDIR /opt
COPY ./hoge.c .
RUN gcc hoge.c
FROM ubuntu:20.04
WORKDIR /opt
COPY --from=0 /opt/a.out .
CMD ["./a.out"]
还可以通过指定名称来进行命名。
FROM gcc:xx.x.x AS compiler
WORKDIR /opt
COPY ./hoge.c .
RUN gcc hoge.c
FROM ubuntu:20.04
WORKDIR /opt
COPY --from=compiler /opt/a.out .
CMD ["./a.out"]
构建本番和开发环境的方法是将ENV分开。
构建Docker镜像:
1. 开发环境:docker image build –target dev .
2. 生产环境:docker image build –target prod .
FROM ubuntu:20.04 AS base
RUN apt update
CMD ["sh","-c","echo $environment"
FROM base AS dev
ENV environment=dev
FROM base AS prod
ENV environment=prod
---