Docker 速通教程

发布于:2025-07-19 ⋅ 阅读:(18) ⋅ 点赞:(0)

以下是精简版 Docker 速通教程,涵盖安装、镜像管理、容器操作、网络存储等核心操作,10分钟快速上手!


1. 安装 Docker

Ubuntu/Debian
sudo apt update
sudo apt install docker.io
sudo systemctl enable --now docker
sudo usermod -aG docker $USER  # 当前用户加入docker组(需重新登录)
CentOS
sudo yum install -y docker
sudo systemctl enable --now docker
验证安装
docker --version
docker run hello-world  # 测试运行

2. 镜像管理

操作 命令
拉取镜像 docker pull nginx:latest
查看本地镜像 docker images
删除镜像 docker rmi <镜像ID>
构建镜像(需Dockerfile) docker build -t my_image:1.0 .
导出镜像 docker save -o nginx.tar nginx:latest
导入镜像 docker load -i nginx.tar

3. 容器操作

基础命令
操作 命令
启动容器 docker run -d --name my_nginx -p 80:80 nginx
查看运行中容器 docker ps
查看所有容器 docker ps -a
停止容器 docker stop my_nginx
启动已停止容器 docker start my_nginx
删除容器 docker rm my_nginx
强制删除运行中容器 docker rm -f my_nginx
进入容器 docker exec -it my_nginx /bin/bash
查看日志 docker logs -f my_nginx
复制文件到容器 docker cp file.txt my_nginx:/path/
常用参数
  • -d:后台运行(守护模式)
  • -p 主机端口:容器端口:端口映射
  • -v /host/path:/container/path:目录挂载
  • --restart=always:容器崩溃自动重启

4. 网络管理

操作 命令
查看网络 docker network ls
创建网络 docker network create my_net
连接容器到网络 docker network connect my_net my_nginx
指定容器网络 docker run --network=my_net nginx

5. 数据卷管理

操作 命令
创建数据卷 docker volume create my_vol
查看数据卷 docker volume ls
挂载数据卷 docker run -v my_vol:/app nginx
绑定主机目录 docker run -v /host/path:/container/path nginx

6. 常用组合命令

# 一键清理所有停止的容器和未使用的镜像
docker system prune -a

# 批量停止所有容器
docker stop $(docker ps -q)

# 查看容器资源占用
docker stats

# 修改容器配置后提交为新镜像
docker commit my_nginx my_nginx:v2

7. 实战示例

示例1:部署Nginx并挂载网页目录
docker run -d --name web \
  -p 8080:80 \
  -v $(pwd)/html:/usr/share/nginx/html \
  nginx
示例2:运行MySQL并持久化数据
docker run -d --name mysql_db \
  -p 3306:3306 \
  -v mysql_data:/var/lib/mysql \
  -e MYSQL_ROOT_PASSWORD=123456 \
  mysql:5.7

8. 可视化工具

安装 Portainer(Docker图形化管理):

docker run -d -p 9000:9000 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  portainer/portainer

访问 http://localhost:9000 初始化管理界面。


附:速查表

!https://dockercheatsheet.painlessdocker.com/assets/img/docker-cheat-sheet.png

掌握以上命令即可应对90%日常场景!如需更复杂功能(如Docker Compose、Swarm集群),可进一步扩展学习。


网站公告

今日签到

点亮在社区的每一天
去签到