镜像
- 查看本机已存在镜像
docker images
- 获取镜像
docker search <image-name>
docker pull <image-name:image-version>
- 删除镜像(删除前要删除相关容器)
docker rmi <image-id>
容器
- 查看已运行的容器
docker ps
列出所有可用的(运行或者停止)容器
docker ps -a
- 运行容器(从镜像启动一个新容器)
docker run -t -i <image-name:image-version> /bin/bash
docker run -t -i <image-id> /bin/bash
- -t 分配一个伪终端
- -i 创建一个可交互的连接
启动容器后会自动进入容器的 shell
运行容器时命名,否则会默认命名
docker run -it -d --name <container-name> <image-id>
在关闭容器后自动删除容器
docker run -it --rm <image-id>
- 后台运行
docker run -it -d <image-id>
进入容器shell
docker attach <container-id>
docker attach <container-name>
脱离shell:按 CTRL+P 然后 CTRL+Q
- 启动容器(停止的容器)
docker start <container-id> <container-id2> ...
- 优雅的重启一个运行中的容器
docker start <container-id>
- 暂停一个运行中的容器
docker pause <container-id>
- 暂停的容器恢复
docker unpause <container-id>
- 阻塞一个容器
docker wait <container-id>
- 停止容器
在容器的shell里:
exit
在容器外:
docker stop <container-id> <container-id2> ...
- 强制关闭容器
docker kill <container-id>
- 删除容器
docker rm <container-id>
- 把所有停止的容器一次性删掉
docker container prune
自定义镜像
- 基于一个当前运行中的容器创建镜像
docker run -it <image-id>
shell > 根据自己的需要执行一个命令或相关配置,然后脱离shell
docker commit <container-id> <user_name>/<image-name>
- 使用Dockerfile构建
镜像查询
- Docker hub
hub.docker.com
其他命令
- 将本机文件传输到容器内
docker cp <container-id>:<path>
- 将容器内部的端口映射到本机
docker run -it -d -p <port>:<in-container-port> <image-id>
- 连接进容器shell(已启动的容器)
docker exec -it <container-id> /bin/bash
exit 退出