AI智能摘要
先搞懂 Docker 的价值,再用国内加速脚本把环境装好,并通过两个一分钟练习感受容器的“开箱即用”
此摘要由AI分析文章内容生成,仅供参考。
🤔 为什么非 Docker 不可?
🧩 环境对齐:打包“应用 + 依赖 + 配置”,告别“在我机器上才能跑”。
🚀 上线迅速:镜像秒级启动,回滚、扩容都像换盒子一样简单。
🙌 团队协作:新人拉镜像就能开发,交付标准化。
🧠 Docker 和虚拟机有啥区别?
容器:共用宿主机内核,只隔离用户态进程 ➡️ 更轻、更快。
虚拟机:自带完整 OS 和内核 ➡️ 更重、启动慢。
三件宝:镜像(模板)、容器(实例)、仓库(镜像存放地)。
🔭 常见落地场景
开发同学:一套镜像全队通用,10 分钟进项目。
运维部署:微服务拆箱、滚动升级、快速回滚。
CI/CD:流水线里构建镜像→跑测试→推送→上线。
教学演示:发镜像就能复现实验环境。
🗺️ 学习路线
⚡ 快速安装(中国地区)
✅ 准备脚本:仓库根目录已提供 install-docker-cn.sh(内置镜像测速、国内 registry mirror)。
🔧 赋权运行:
chmod +x install-docker-cn.sh ./install-docker-cn.sh # 默认写入国内镜像加速 ./install-docker-cn.sh --help # 查看可选参数🧪 验证:
docker version docker run --rm hello-world
如果脚本被防火墙策略挡掉,可根据终端提示切换离线包或手动源。
🚀 两个 1 分钟练习
Nginx 静态站点
docker run -d --name web -p 8080:80 nginx:stable # 浏览器打开 http://localhost:8080 docker rm -f web # ✅ 玩完别忘了删MySQL + Adminer(Docker Compose)
# docker-compose.yml services: db: image: mysql:8 environment: - MYSQL_ROOT_PASSWORD=secret volumes: - db_data:/var/lib/mysql adminer: image: adminer ports: - 9090:8080 volumes: db_data:docker compose up -d # 浏览器打开 http://localhost:9090 连接 db(账户 root/secret) docker compose down --volumes # ✅ 清理容器和数据卷
🛠️ 常见小坑
❌
Cannot connect to the Docker daemon→systemctl status docker看服务是否启动。⚠️ 总要
sudo才能 docker →sudo usermod -aG docker $USER,重新登录。🐢 拉镜像慢 → 检查
/etc/docker/daemon.json是否写了国内registry-mirrors。🧊 磁盘告警 →
docker system df看占用,确认后再docker system prune。🪟 WSL/老系统 → 先确认支持 systemd 或升级内核。