Docker作为轻量级容器化技术,已成为开发、测试和部署环节的核心工具。本文梳理了Docker日常操作中的关键命令,涵盖镜像、容器管理及信息查询等场景,助你高效应对各类使用需求。
镜像基础操作
1. 获取镜像
docker pull 镜像名称:标签
# 拉取指定版本的CentOS镜像
docker pull centos:72. 移除镜像
docker rmi 镜像名称:标签 按名称移除docker rmi 镜像ID 按ID移除
3. 自制镜像
docker build -t 镜像名称:版本 构建目录
# 基于./app目录的Dockerfile,创建test-image:v2镜像
docker build -t test-image:v2 ./app4. 镜像的导入导出
导入镜像:
docker load -i 镜像文件.tar# 从backup.tar导入镜像 docker load -i backup.tar导出镜像:
docker save -o 目标文件.tar 镜像名称:版本# 导出nginx:1.21镜像为nginx-backup.tar docker save -o nginx-backup.tar nginx:1.21
容器核心操作
1. 新建并启动容器
docker run [参数] 镜像名称 [执行命令]
# 后台启动nginx容器并映射80端口
docker run -d -p 8080:80 --name my-nginx nginx:1.21[关键参数说明]
-d:后台运行(守护态)
-it:开启交互模式(搭配终端命令使用)
--name:自定义容器名称
-p:端口映射(宿主机端口:容器内端口)
-v:目录挂载(宿主机路径:容器内路径)
--rm:容器停止后自动清理
2. 容器状态控制
docker start 容器名 启动已停止的容器docker stop 容器名 停止运行中的容器docker restart 容器名 重启容器
3. 进入运行容器
推荐使用docker exec进行交互:
docker exec -it 容器名 终端命令# 进入my-nginx容器的bash终端 docker exec -it my-nginx /bin/bashdocker attach 容器名# 连接到运行中的my-nginx容器 docker attach my-nginx
4. 删除容器
docker rm 容器名/容器ID
# 删除名为test的容器
docker rm test
# 强制删除运行中的demo容器
docker rm -f demo信息查询与监控
1. 容器列表查看
docker ps [选项]
# 显示运行中容器
docker ps
# 显示所有容器(含停止状态)
docker ps -a2. 镜像列表查询
docker images 列出所有本地镜像docker images mysql 筛选显示mysql镜像
3. 容器日志查看
docker logs [选项] 容器名
# 查看my-nginx容器的最近100行日志
docker logs --tail 100 my-nginx
# 实时跟踪日志输出
docker logs -f my-nginx4. 详细信息查看
docker inspect 容器名/镜像名 查看对象的详细配置信息
5. 端口映射查看
docker port 容器名 查看容器端口与宿主机的映射关系
6. 资源使用监控
docker stats [容器名]
# 监控特定容器资源占用
docker stats my-nginx
# 监控所有容器资源使用情况
docker stats容器内程序安全保障
在容器中部署应用时,代码安全是关键考量,尤其在对外交付场景中需严防程序被篡改或窃取。
Virbox Protector工具可针对Docker环境下的各类程序提供保护,无论是Java、Python应用,还是本地elf、so文件,均能通过专属安全策略加固,确保容器内程序的运行安全。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用。你还可以使用@来通知其他用户。