> 技术文档 > Docker环境离线安装指南_Docker离线部署完整步骤

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 常见问题

  1. Docker Desktop无法启动

    # 重启Docker服务net stop com.docker.servicenet start com.docker.service
  2. 权限问题

    # 以管理员身份运行PowerShellStart-Process powershell -Verb runAs
  3. 端口冲突

    # 查看端口占用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. 安全注意事项

  1. 网络安全

    • 在离线环境中使用Docker时,确保网络隔离
    • 定期更新Docker版本以修复安全漏洞
  2. 镜像安全

    • 只使用可信的Docker镜像
    • 定期扫描镜像中的安全漏洞
  3. 数据安全

    • 定期备份重要的容器数据
    • 使用数据卷来持久化重要数据

8. 总结

通过以上步骤,您可以在Windows系统上成功安装和配置Docker环境,并使用hello-world进行测试验证。离线安装方式特别适用于企业内网环境或无法连接互联网的场景。

关键要点

  1. 确保下载正确的Windows版本安装包
  2. 以管理员权限执行安装命令
  3. 正确配置Docker Compose文件
  4. 定期维护和更新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 常见问题

  1. Docker服务启动失败

    # 查看服务日志sudo journalctl -u docker.service# 重启Docker服务sudo systemctl restart docker
  2. 权限问题

    # 确保用户在docker组中groups $USER# 重新添加用户到docker组sudo usermod -aG docker $USER
  3. 存储驱动问题

    # 查看存储驱动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进行测试验证。离线安装方式特别适用于企业内网环境或无法连接互联网的场景。

关键要点

  1. 确保下载正确的系统版本安装包
  2. 以管理员/root权限执行安装命令
  3. 正确配置Docker Compose文件
  4. 定期维护和更新Docker环境
  5. 注意系统权限和用户组配置

参考资料

  • Docker官方文档
  • Docker Compose官方文档
  • Docker Hello World
  • CentOS Docker安装指南

本文档基于实际项目经验编写,如有问题请及时反馈。