Docker环境离线安装指南_Docker离线部署完整步骤
Docker环境离线安装指南
概述
本文档将指导您如何在Windows系统和CentOS系统上离线安装Docker和docker-compose,并使用hello-world进行环境测试。适用于无法连接互联网或需要离线部署的场景。
系统要求
Windows系统要求
- Windows 10/11 (64位)
- 至少4GB RAM
- 至少10GB可用磁盘空间
- 支持虚拟化的CPU
CentOS系统要求
- CentOS 7/8/Stream (64位)
- 至少2GB RAM
- 至少5GB可用磁盘空间
- 支持虚拟化的CPU
1. Windows系统 - Docker Desktop 离线安装
1.1 下载Docker Desktop安装包
在可以联网的Windows机器上下载Docker Desktop安装包:
# 使用PowerShell下载Docker DesktopInvoke-WebRequest -Uri \"https://desktop.docker.com/win/stable/Docker%20Desktop%20Installer.exe\" -OutFile \"DockerDesktopInstaller.exe\"
或者直接从官网下载:
- 访问:https://www.docker.com/products/docker-desktop/
- 下载Windows版本的Docker Desktop
1.2 离线安装Docker Desktop
将下载的安装包传输到目标机器,然后执行:
# 以管理员身份运行命令提示符DockerDesktopInstaller.exe install --quiet
1.3 验证Docker安装
安装完成后,打开PowerShell或命令提示符验证:
docker --versiondocker-compose --version
2. Docker Compose 离线安装
2.1 下载Docker Compose
在联网机器上下载docker-compose:
# 下载最新版本的docker-composeInvoke-WebRequest -Uri \"https://github.com/docker/compose/releases/latest/download/docker-compose-windows-x86_64.exe\" -OutFile \"docker-compose.exe\"
2.2 安装Docker Compose
将下载的docker-compose.exe文件复制到目标机器的Docker安装目录:
# 复制到Docker安装目录copy docker-compose.exe \"C:\\Program Files\\Docker\\Docker\\resources\\bin\\docker-compose.exe\"
或者添加到系统PATH:
# 将docker-compose.exe复制到系统PATH中的目录copy docker-compose.exe \"C:\\Windows\\System32\\docker-compose.exe\"
3. Docker环境测试
3.1 创建测试配置文件
创建docker-compose.yml
文件:
version: \'3.8\'services: hello-world: image: hello-world container_name: docker-test restart: unless-stopped
3.2 离线镜像导入
如果需要使用hello-world镜像,可以导出和导入:
# 在联网机器上导出镜像docker save hello-world > hello-world.tar# 在离线机器上导入镜像docker load < hello-world.tar
3.3 运行测试
# 启动测试容器docker-compose up# 或者直接运行hello-worlddocker run hello-world
4. 常用Docker命令
4.1 基础命令
# 查看Docker版本docker --version# 查看Docker信息docker info# 列出本地镜像docker images# 列出运行中的容器docker ps# 列出所有容器docker ps -a
4.2 容器管理
# 启动容器docker start # 停止容器docker stop # 重启容器docker restart # 删除容器docker rm # 删除镜像docker rmi
4.3 Docker Compose命令
# 启动服务docker-compose up# 后台启动服务docker-compose up -d# 停止服务docker-compose down# 查看服务状态docker-compose ps# 查看服务日志docker-compose logs
5. 故障排除
5.1 常见问题
-
Docker Desktop无法启动
# 重启Docker服务net stop com.docker.servicenet start com.docker.service
-
权限问题
# 以管理员身份运行PowerShellStart-Process powershell -Verb runAs
-
端口冲突
# 查看端口占用netstat -ano | findstr :8080# 结束占用端口的进程taskkill /PID /F
5.2 日志查看
# 查看Docker日志docker logs # 实时查看日志docker logs -f # 查看Docker Compose日志docker-compose logs -f
6. 性能优化
6.1 资源配置
在Docker Desktop设置中调整资源分配:
- 内存:建议分配4GB以上
- CPU:建议分配2核以上
- 磁盘:确保有足够空间
6.2 镜像优化
# 清理未使用的镜像docker image prune# 清理所有未使用的资源docker system prune -a
7. 安全注意事项
-
网络安全
- 在离线环境中使用Docker时,确保网络隔离
- 定期更新Docker版本以修复安全漏洞
-
镜像安全
- 只使用可信的Docker镜像
- 定期扫描镜像中的安全漏洞
-
数据安全
- 定期备份重要的容器数据
- 使用数据卷来持久化重要数据
8. 总结
通过以上步骤,您可以在Windows系统上成功安装和配置Docker环境,并使用hello-world进行测试验证。离线安装方式特别适用于企业内网环境或无法连接互联网的场景。
关键要点
- 确保下载正确的Windows版本安装包
- 以管理员权限执行安装命令
- 正确配置Docker Compose文件
- 定期维护和更新Docker环境
参考资料
- Docker官方文档
- Docker Compose官方文档
- Docker Hello World
9. CentOS系统 - Docker离线安装
9.1 下载Docker安装包
在可以联网的CentOS机器上下载Docker安装包:
# 创建下载目录mkdir -p ~/docker-offlinecd ~/docker-offline# 下载Docker CE安装包yum install -y yum-utilsyum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repoyumdownloader --resolve docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin# 下载依赖包yumdownloader --resolve device-mapper-persistent-data lvm2
9.2 创建离线安装包
# 创建RPM包目录mkdir -p docker-rpmscp *.rpm docker-rpms/# 创建安装脚本cat > install-docker.sh << \'EOF\'#!/bin/bashecho \"开始安装Docker...\"# 安装依赖包rpm -ivh device-mapper-persistent-data-*.rpmrpm -ivh lvm2-*.rpm# 安装Docker包rpm -ivh containerd.io-*.rpmrpm -ivh docker-ce-cli-*.rpmrpm -ivh docker-ce-*.rpmrpm -ivh docker-buildx-plugin-*.rpmrpm -ivh docker-compose-plugin-*.rpm# 启动Docker服务systemctl start dockersystemctl enable dockerecho \"Docker安装完成!\"docker --versionEOFchmod +x install-docker.sh
9.3 离线安装Docker
将整个docker-offline
目录传输到目标CentOS机器,然后执行:
cd docker-offline./install-docker.sh
9.4 验证Docker安装
# 检查Docker版本docker --version# 检查Docker Compose版本docker compose version# 测试Docker运行docker run hello-world
10. CentOS系统 - Docker Compose离线安装
10.1 下载Docker Compose
在联网机器上下载docker-compose:
# 下载最新版本的docker-composecurl -L \"https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)\" -o docker-compose# 添加执行权限chmod +x docker-compose
10.2 安装Docker Compose
将下载的docker-compose文件复制到目标机器:
# 复制到系统PATHsudo cp docker-compose /usr/local/bin/docker-compose# 创建软链接sudo ln -sf /usr/local/bin/docker-compose /usr/bin/docker-compose# 验证安装docker-compose --version
11. CentOS系统 - Docker环境测试
11.1 创建测试配置文件
创建docker-compose.yml
文件:
version: \'3.8\'services: hello-world: image: hello-world container_name: docker-test restart: unless-stopped
11.2 离线镜像导入
# 在联网机器上导出镜像docker save hello-world > hello-world.tar# 在离线机器上导入镜像docker load < hello-world.tar
11.3 运行测试
# 启动测试容器docker-compose up# 或者直接运行hello-worlddocker run hello-world
12. CentOS系统 - 常用命令
12.1 系统服务管理
# 启动Docker服务sudo systemctl start docker# 停止Docker服务sudo systemctl stop docker# 重启Docker服务sudo systemctl restart docker# 设置开机自启sudo systemctl enable docker# 查看服务状态sudo systemctl status docker
12.2 Docker命令
# 查看Docker信息docker info# 查看Docker版本docker --version# 列出镜像docker images# 列出容器docker ps -a# 清理未使用的资源docker system prune -a
12.3 用户权限配置
# 将当前用户添加到docker组sudo usermod -aG docker $USER# 重新登录或重启系统使权限生效# 或者执行以下命令立即生效newgrp docker
13. CentOS系统 - 故障排除
13.1 常见问题
-
Docker服务启动失败
# 查看服务日志sudo journalctl -u docker.service# 重启Docker服务sudo systemctl restart docker
-
权限问题
# 确保用户在docker组中groups $USER# 重新添加用户到docker组sudo usermod -aG docker $USER
-
存储驱动问题
# 查看存储驱动docker info | grep \"Storage Driver\"# 修改存储驱动(在/etc/docker/daemon.json中)sudo tee /etc/docker/daemon.json <<EOF{ \"storage-driver\": \"overlay2\"}EOF# 重启Docker服务sudo systemctl restart docker
13.2 性能优化
# 配置Docker守护进程sudo tee /etc/docker/daemon.json <<EOF{ \"storage-driver\": \"overlay2\", \"log-driver\": \"json-file\", \"log-opts\": { \"max-size\": \"10m\", \"max-file\": \"3\" }}EOF# 重启Docker服务sudo systemctl restart docker
14. 总结
通过以上步骤,您可以在Windows和CentOS系统上成功安装和配置Docker环境,并使用hello-world进行测试验证。离线安装方式特别适用于企业内网环境或无法连接互联网的场景。
关键要点
- 确保下载正确的系统版本安装包
- 以管理员/root权限执行安装命令
- 正确配置Docker Compose文件
- 定期维护和更新Docker环境
- 注意系统权限和用户组配置
参考资料
- Docker官方文档
- Docker Compose官方文档
- Docker Hello World
- CentOS Docker安装指南
本文档基于实际项目经验编写,如有问题请及时反馈。