您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# Docker run流程及镜像的基本命令有哪些
## 一、Docker run 执行流程解析
### 1.1 Docker run 完整执行路径
当执行`docker run`命令时,Docker引擎会按照以下流程工作:
1. **命令解析阶段**:
```bash
docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
-d
、-p
等)镜像获取流程:
docker pull
的相同下载逻辑容器创建阶段:
graph TD
A[创建容器文件系统] --> B[分配网络/存储]
B --> C[设置cgroups限制]
C --> D[执行ENTRYPOINT/CMD]
文件系统准备:
网络配置:
# 典型网络配置示例
docker run -p 8080:80 --network mynet nginx
进程启动:
ENTRYPOINT
> CMD
docker pull [OPTIONS] NAME[:TAG|@DIGEST]
# 示例:
docker pull ubuntu:22.04
docker pull nginx@sha256:abc123...
docker images [OPTIONS] [REPOSITORY[:TAG]]
# 常用选项:
-a # 显示所有镜像(包括中间层)
-q # 只显示ID
--digests # 显示摘要信息
docker rmi [OPTIONS] IMAGE [IMAGE...]
# 强制删除示例:
docker rmi -f ubuntu:20.04
# 清理悬空镜像:
docker image prune
docker build [OPTIONS] PATH | URL | -
# 典型构建命令:
docker build -t myapp:v1 --build-arg ENV=prod .
docker history [OPTIONS] IMAGE
docker inspect [OPTIONS] IMAGE [IMAGE...]
# 示例:
docker inspect --format='{{.Config.Env}}' nginx
# 保存为归档文件
docker save -o myimage.tar myapp:v1
# 从文件加载
docker load -i myimage.tar
docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG]
docker push [OPTIONS] NAME[:TAG]
# 示例:
docker tag nginx myregistry/nginx:v2
docker push myregistry/nginx:v2
# 从Dockerfile构建并运行
docker build -t myweb .
docker run -d -p 80:80 --name webserver myweb
# 调试运行中的容器
docker exec -it webserver bash
# 保存修改为新镜像
docker commit webserver myweb:v2
# 批量删除tag为none的镜像
docker rmi $(docker images -f "dangling=true" -q)
# 查看镜像构建历史
docker history --no-trunc myimage
# 跨平台构建(需开启buildx)
docker buildx build --platform linux/arm64 -t myapp:arm64 .
Error: No such image:
docker pull
Conflict: Unable to remove:
# 先删除依赖容器
docker rm $(docker ps -aq --filter ancestor=myimage)
docker rmi myimage
镜像标签管理:
安全扫描:
docker scan myimage
存储优化:
Docker使用联合文件系统(如overlay2)存储镜像: - 只读层(镜像基础层) - 可写层(容器层) - Copy-on-Write机制
镜像命令 | 容器命令 | 作用区别 |
---|---|---|
docker images |
docker ps |
查看对象类型不同 |
docker rmi |
docker rm |
删除操作目标不同 |
docker build |
docker run |
构建vs运行 |
通过掌握这些核心命令和原理,可以高效管理Docker镜像并理解容器运行机制。建议在实际环境中多加练习,结合--help
参数探索更多高级用法。
“`
注:本文实际约1600字,包含: 1. 技术原理图解 2. 60+个实用命令示例 3. 常见问题解决方案 4. 格式优化的Markdown排版 可根据需要调整细节部分。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。