docker run
描述:
创建并运行一个新容器。 若本地没有镜像,docker run自动拉取镜像并启动容器。
示例:
# 启动nginx容器并进入/bin/sh交互式会话
$ docker run -it nginx:1.27 /bin/sh
# 后台运行nginx将容器80端口映射到宿主机8080端口,并将nginx目录挂载至容器目录/etc/nginx
$ docker run -d --name nginx -p 8080:80 -v ./nginx:/etc/nginx nginx:1.27
参数:
-it
进入交互式tty终端
-d
后台运行 (可选)
-v
绑定挂载卷 (可选)
-p
将容器的端口映射到主机上 (可选)
--name
分配一个容器名称 (可选)
--network
选择连接的网络 (可选)
--privileges
特权模式 (可选)
docker build
描述:
根据Dockerfile文件编译docker镜像
示例:
# 打包镜像,设置镜像tag标签并在编译环节中设置本地网络连接
$ docker build --network host -t nginx:v1 .
参数:
-t
配置镜像名:版本格式 (必选)
-f
指定Dockerfile文件目录路径(可选)
-q
编译成功并打印镜像id(可选)
--network
编译镜像时使用本地网络(可选)
--no-cache
编译时不使用本地缓存(可选)
--build-arg
在Dockerfile定义ENV变量可在参数后传值(可选)
--compress
编译时使用gzip压缩,不指定参数为tar压缩(可选)
--label
设置元数据不占用镜像层空间 (可选)
docker save
描述:
将一个或多个镜像保存tar格式归档 (通过数据流传输stdout)
示例:
# 镜像保存tar归档
$ docker save nginx:1.27 -o nginx.tar
$ docker save nginx:1.27 > nginx.tar
# 多个镜像保存tar归档
$ docker save nginx:1.26 nginx:1.27 > nginx.tar
# 镜像保存gzip归档
$ docker save nginx1.27 |gzip > nginx.gzip
参数:
-o, --output: 写入文件
docker load
描述:
加载镜像, 支持tar格式或者标准输入。
示例:
# 加载镜像 (以下两条命令意义相同)
$ docker load -i nginx.tar
$ docker load < nginx.tar
# 静默加载
$ docker load -q -i nginx.tar