记录了 docker 常用命令
Docker
常用命令
构建 Nginx,指向目录的 HTML
shell
docker run --name {容器名称} -v {目标地址}:/usr/share/nginx/html:ro -d -p {暴露端口}:80 nginx
# demo
docker run --name da1 -v /Users/ddd/D/core/nginx-utils:/usr/share/nginx/html:ro -d -p 5554:80 nginx构建 Nginx,指向目录的 HTML,并配置代理
shell
docker run --name ddd233 -v {目标 html 地址}:/usr/share/nginx/html:ro -v {目标 conf 地址}:/etc/nginx/nginx.conf:ro -d -p 5555:5555 nginx
# demo
docker run --name ddd233 -v /Users/ddd/D/feiyu/eai3/integration-ui3/dist:/usr/share/nginx/html:ro -v /Users/ddd/D/core/nginx-utils/eai-proxy.conf:/etc/nginx/nginx.conf:ro -d -p 5555:5555 nginx类型
镜像
- 拉取镜像:
docker pull name[:TAG] - 查看当前的镜像:
docker image ls - 查看镜像历史修改记录:
docke**r** history IMAGE - 运行镜像,并命名:
docker run --name webserver -d -p 80:80 nginx docker exec -it webserver bash- 生成镜像:
docker build -t IMAGE {执行的上下文路径}
Dockerfile
copy
- 复制当前上下文的所有文件到对应目录
COPY [--chown=<user>:<group>] <源路径>... <目标路径>
ADD
- 复制文件,并进行解压
ADD [--chown=<user>:<group>] <源路径>... <目标路径>
CMD
- 指定默认的容器主进程的启动命令的
- shell 格式:
CMD <命令> - exec 格式:
CMD ["可执行文件", "参数1", "参数2"…]
ENTRYPOINT
和 CMD 类似功能,不过可以在启动镜像时,将传入的参数给到 ENTRYPOINT
shelldocker run test -i -> ENTRYPOINT ['curl', 'http://baidu.com', '-i'] # 多了传入的命令shell 格式:
CMD <命令>exec 格式:
CMD ["可执行文件", "参数1", "参数2"…]
ENV
- 设置镜像的环境变量
ENV <key> <value>ENV <key1>=<value1> <key2>=<value2>…
VOLUME
- 定义卷
VOLUME ["<路径1>", "<路径2>"…]VOLUME <路径>
WORKDIR
- 修改当前的工作路径
WORKDIR <PATH>
USER
- 修改当前用户
USER <用户名>[:<用户组>]
容器
- 运行容器:
docker run IMAGE-d- 使该容器启动后进入后台
-p- 随机映射一个端口到内部容器开放的网络端口
- 将服务器的 4444 端口指向容器的 80 端口:
-p 4444:80
- 停止容器:
docker stop CONTAINER-ID - 删除容器:
docker rm CONTAINER-ID - 查看容器进程:docker ps
- 查看当前运行容器:
docker container ls - 查看容器日志:
docker container logs [container ID or NAMES] - 执行命令:
docker exec [options] {container id} {bash}exec命令不会因为输入终止而把容器进程关闭;但attach会
Volume
- 创建 volume:
docker volume create {name} - 查看 volume 信息:
docker volme inspect {name}
存储概念

QA
arm 架构问题
添加 --platform "linux/amd64" 声明平台
docker run --name {} -v {}:/usr/share/nginx/html:ro -p 8088:80 -d nginx
docker run --name test-js -v /Users/ddd/Downloads:/usr/share/nginx/html:ro -p 8088:80 -d nginx