正在加载内容…
Docker 环境安装
1458 字
7 分钟
Docker 环境安装
Windows用WSL2加Docker Desktop,Ubuntu用apt装Docker CE;docker组等同root须慎用。
本文只记录操作流程与命令,覆盖两个平台的 Docker 环境搭建:Windows(Docker Desktop + WSL2)与 Ubuntu(Docker CE)。
一、Windows 平台
1. 前置检查
本文选择 Docker Desktop 的 WSL 2 后端;支持的 Windows 版本也可使用 Hyper-V 后端。具体系统、WSL 和硬件要求以官方安装页为准。先确认环境:
# 查看系统版本;不要把旧版 WSL 的最低构建号当成当前 Docker Desktop 支持要求winver
# 查看 WSL 状态与版本wsl --statuswsl -l -v若未启用 WSL,以管理员身份打开 PowerShell 执行:
# 安装 WSL(默认 Ubuntu 发行版)wsl --install
# 或仅启用相关功能后手动升级dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestartdism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
# 设置 WSL 默认版本为 2wsl --set-default-version 2
# 将已有发行版切换到 WSL2wsl --set-version <发行版名称> 2若提示内核组件过旧,需安装 Linux 内核更新包(
wsl_update_x64.msi),或使用wsl --update在线更新。
重启系统后确认:
wsl -l -v # 目标发行版 VERSION 为 2;空闲时 STATE 为 Stopped 也正常2. 安装 Docker Desktop
- 访问
https://www.docker.com/products/docker-desktop/,下载 Docker Desktop for Windows(按 CPU 架构选择 x86_64 / ARM64)。 - 双击
Docker Desktop Installer.exe运行。 - 安装界面勾选以下选项:
- Use WSL 2 instead of Hyper-V(推荐)
- Add shortcut to desktop
- 点击 Ok / Install,等待安装完成。
- 点击 Close and restart 重启系统。
命令行静默安装(可选):
Start-Process '.\Docker Desktop Installer.exe' -Wait -ArgumentList 'install', '--quiet', '--accept-license'3. 首次启动与配置
- 开始菜单启动 Docker Desktop,等待状态栏出现 “Docker Desktop is running”。
Settings → General:确认勾选 Use the WSL 2 based engine。Settings → Resources → WSL Integration:开启 Enable integration with my default WSL distro,并选择需要集成的发行版。Settings → Docker Engine:可按需配置镜像加速器,例如:
{ "registry-mirrors": ["https://<your-mirror>.mirror.aliyuncs.com"]}点击 Apply & Restart。
4. 验证
在 PowerShell 或 WSL 终端中:
docker versiondocker infodocker run hello-worlddocker run -it ubuntu:latest bash5. 常用运维命令
# 查看服务状态Get-Service com.docker.service
# 停止 / 启动 Docker Desktopdocker desktop stopStart-Process "C:\Program Files\Docker\Docker\Docker Desktop.exe"
# 清理磁盘占用(镜像、容器、构建缓存)docker system prune -a --volumes
# 导出 WSL 发行版备份wsl --export Ubuntu ubuntu_backup.tar6. 卸载
设置 → 应用 → Docker Desktop → 卸载,并清理残留目录:
Remove-Item -Recurse "$Env:APPDATA\Docker"Remove-Item -Recurse "$Env:LOCALAPPDATA\Docker"wsl --unregister docker-desktopwsl --unregister docker-desktop-data二、Ubuntu 平台
1. 环境检查
# 查看系统版本;使用当前 Docker Engine 官方支持的 Ubuntu 发行版lsb_release -acat /etc/os-release
# 架构(x86_64 或 arm64)dpkg --print-architecture
# 查看内核版本;不能只凭一个历史最低内核版本判断当前安装是否受支持uname -runame -a
# 卸载冲突的旧版本sudo apt remove -y docker.io docker-compose docker-compose-v2 docker-doc podman-docker containerd runc2. 安装方式一:apt 仓库安装(推荐)
# 更新索引并安装依赖sudo apt updatesudo apt install -y ca-certificates curl gnupg lsb-release
# 添加 Docker 官方 GPG keysudo install -m 0755 -d /etc/apt/keyringscurl -fsSL https://download.docker.com/linux/ubuntu/gpg \ | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpgsudo chmod a+r /etc/apt/keyrings/docker.gpg
# 添加软件源echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \ https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" \ | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 安装 Docker Enginesudo apt updatesudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 安装指定版本apt-cache madison docker-ceVERSION_STRING=替换为上一步列出的完整版本字符串sudo apt install -y docker-ce="$VERSION_STRING" docker-ce-cli="$VERSION_STRING" containerd.io docker-buildx-plugin docker-compose-plugin3. 安装方式二:系统源快速安装
sudo apt updatesudo apt install -y docker.io4. 启动服务并设置开机自启
sudo systemctl enable docker --nowsudo systemctl status docker
# 或sudo service docker startsudo service docker restart5. 配置非 root 用户执行 docker
# 将当前用户加入 docker 组sudo usermod -aG docker $USER# 或指定用户sudo usermod -aG docker ubuntu
# 确认是否加入成功getent group dockerid -nG
# 刷新组权限(无需重新登录)newgrp docker
# 组成员变更不需要重启 Docker daemon;重新登录或 newgrp 后验证即可退出当前 SSH 会话重新登录,然后验证:
docker psdocker --versiondocker run hello-world注意:docker 组等价于 root 权限,生产环境应谨慎授权。
6. 配置镜像加速器(可选)
sudo mkdir -p /etc/dockersudo tee /etc/docker/daemon.json <<'EOF'{ "registry-mirrors": ["https://<your-mirror>.mirror.aliyuncs.com"], "log-driver": "json-file", "log-opts": { "max-size": "10m", "max-file": "3" }}EOF
sudo systemctl daemon-reloadsudo systemctl restart dockerdocker info | grep -A5 "Registry Mirrors"7. 基础操作命令
镜像构建
docker build -t myimg:latest .docker build -t myimg:latest -f Dockerfile.prod .运行容器
docker run myimgdocker run --name myc1 myimgdocker run -dit --name myc1 ubuntu:latestdocker run -it --rm -p 3000:3000 -v $(pwd):/workspace myimg bashdocker psdocker ps -a镜像管理
docker imagesdocker pull ubuntu:latestdocker rmi myimg:latestdocker image prune -a网络管理
docker network lsdocker network create mynetdocker network inspect mynetdocker run -d --network mynet --name web nginxdocker network rm mynet提交容器为新镜像
docker commit <container_id> mynewimgdocker commit myc1 mynewimgdocker images日志与清理
docker logs -f myc1docker stop myc1 && docker rm myc1docker system dfdocker system prune -a --volumes8. 卸载
sudo apt purge -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-pluginsudo apt purge -y docker.io
sudo rm -rf /var/lib/dockersudo rm -rf /var/lib/containerdsudo rm -f /etc/apt/sources.list.d/docker.listsudo rm -f /etc/apt/keyrings/docker.gpg三、两平台对照速查
| 操作 | Windows | Ubuntu |
|---|---|---|
| 安装载体 | Docker Desktop 安装包(本文使用 WSL 2 后端) | apt 安装 Docker CE |
| 启动方式 | 启动 Docker Desktop 应用 | sudo systemctl enable docker --now |
| 权限配置 | 无需额外配置 | sudo usermod -aG docker $USER + newgrp docker |
| 配置文件 | Docker Desktop → Docker Engine | /etc/docker/daemon.json |
| 验证命令 | docker version / docker run hello-world | docker version / docker ps |
| 卸载 | 系统应用卸载 + 清理 WSL 发行版 | apt purge + 删除 /var/lib/docker |
四、常见问题
- Windows 提示 WSL2 未安装:执行
wsl --install与wsl --update,重启后再启动 Docker Desktop。 - Windows 启动卡在 “Docker Desktop starting”:执行
wsl --shutdown后重启,并检查 BIOS 是否开启虚拟化(任务管理器 → 性能 → CPU → 虚拟化)。 - Ubuntu 报
permission denied while trying to connect to the Docker daemon socket:当前用户未加入 docker 组,执行sudo usermod -aG docker $USER && newgrp docker。 - Ubuntu 拉取镜像慢:配置
registry-mirrors后sudo systemctl restart docker。 - 端口无法访问:确认容器做了端口映射
-p 宿主端口:容器端口,并检查防火墙放行。
核对资料
文章分享
如果这篇文章对你有帮助,欢迎分享给更多人!
相关文章 智能推荐
1
Dockerfile 与 docker run
Docker 本文讲Dockerfile指令与docker run用法,覆盖构建运行流程、实战易错点及排错清单,并给出合并RUN、多阶段构建等精简镜像习惯;EXPOSE仅声明端口。
2
Docker 镜像制作实践
Docker Docker镜像制作实践,涵盖Dockerfile编写、分层缓存优化、上下文与dockerignore管理、镜像推送、commit与save差异及常见故障排查。
3
Docker 概述与架构原理
Docker Docker镜像交付,容器三级调度运行,推荐构建一次后pull+run部署。
4
文件系统解析:FAT32、NTFS、EXT4 与 exFAT
Docker 本文对比FAT32、NTFS、EXT4与exFAT,说明各自容量、安全与兼容性特点及选型权衡。性能结论受驱动、挂载选项与硬件影响。
5
容器内常用命令
Docker 本文介绍Docker容器内执行命令的方法及常用命令速查,比较Bash、exec与Dockerfile RUN的差异,说明镜像容器管理要点与安全边界。
随机文章 随机推荐
评论区
正在加载 GitHub 评论…