当前位置: 首页 > backend >正文

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 Desktop
Invoke-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 --version
docker-compose --version

2. Docker Compose 离线安装

2.1 下载Docker Compose

在联网机器上下载docker-compose:

# 下载最新版本的docker-compose
Invoke-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-worldcontainer_name: docker-testrestart: unless-stopped

3.2 离线镜像导入

如果需要使用hello-world镜像,可以导出和导入:

# 在联网机器上导出镜像
docker save hello-world > hello-world.tar# 在离线机器上导入镜像
docker load < hello-world.tar

3.3 运行测试

# 启动测试容器
docker-compose up# 或者直接运行hello-world
docker run hello-world

4. 常用Docker命令

4.1 基础命令

# 查看Docker版本
docker --version# 查看Docker信息
docker info# 列出本地镜像
docker images# 列出运行中的容器
docker ps# 列出所有容器
docker ps -a

4.2 容器管理

# 启动容器
docker start <container_id># 停止容器
docker stop <container_id># 重启容器
docker restart <container_id># 删除容器
docker rm <container_id># 删除镜像
docker rmi <image_id>

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.service
    net start com.docker.service
    
  2. 权限问题

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

    # 查看端口占用
    netstat -ano | findstr :8080# 结束占用端口的进程
    taskkill /PID <process_id> /F
    

5.2 日志查看

# 查看Docker日志
docker logs <container_id># 实时查看日志
docker logs -f <container_id># 查看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-offline
cd ~/docker-offline# 下载Docker CE安装包
yum install -y yum-utils
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yumdownloader --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-rpms
cp *.rpm docker-rpms/# 创建安装脚本
cat > install-docker.sh << 'EOF'
#!/bin/bash
echo "开始安装Docker..."# 安装依赖包
rpm -ivh device-mapper-persistent-data-*.rpm
rpm -ivh lvm2-*.rpm# 安装Docker包
rpm -ivh containerd.io-*.rpm
rpm -ivh docker-ce-cli-*.rpm
rpm -ivh docker-ce-*.rpm
rpm -ivh docker-buildx-plugin-*.rpm
rpm -ivh docker-compose-plugin-*.rpm# 启动Docker服务
systemctl start docker
systemctl enable dockerecho "Docker安装完成!"
docker --version
EOFchmod +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-compose
curl -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文件复制到目标机器:

# 复制到系统PATH
sudo 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-worldcontainer_name: docker-testrestart: unless-stopped

11.2 离线镜像导入

# 在联网机器上导出镜像
docker save hello-world > hello-world.tar# 在离线机器上导入镜像
docker load < hello-world.tar

11.3 运行测试

# 启动测试容器
docker-compose up# 或者直接运行hello-world
docker 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安装指南

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

http://www.xdnf.cn/news/16920.html

相关文章:

  • 计算机网络:如何将一个C类网络划分成两个子网
  • 35.【.NET8 实战--孢子记账--从单体到微服务--转向微服务】--数据缓存
  • Docker-03.快速入门-部署MySQL
  • 【大模型实战】向量数据库实战 - Chroma Milvus
  • Android 之 蓝牙通信(4.0 BLE)
  • CASAtomic 原子操作详解
  • 1.内核模块
  • 攻防世界-web-csaw-mfw
  • IO流-字节流-FileOutputStream
  • 复现YOLOV5+训练指定数据集
  • 关于Web前端安全防御之安全头配置
  • 最新Android Studio汉化教程--兼容插件包
  • Java Stream API 编程实战
  • MySQL 事务原理 + ACID笔记
  • 【C语言】结构体详解
  • 无人机集群协同三维路径规划,采用冠豪猪优化器(Crested Porcupine Optimizer, CPO)实现,Matlab代码
  • Jetpack Compose for XR:构建下一代空间UI的完整指南
  • C++引用:高效安全的别名机制详解
  • 途游Android面试题及参考答案
  • pytorch 安装
  • 机器翻译的分类:规则式、统计式、神经式MT的核心区别
  • 计算用户日活:从数据设计到可视化的全流程(高频场景题)
  • 深入掌握 ExcelJS:Node.js 中强大的 Excel 操作库
  • RAG 知识库实战指南:基于 Spring AI 构建 AI 知识问答应用
  • GaussDB case when的用法
  • 在win上安装最新的X-anylabeling以及sam2来帮助进行全自动追踪标注
  • 多模态后训练反常识:长思维链SFT和RL的协同困境
  • Git 常用命令指南:从入门到高效开发
  • 【Qt】QObject::startTimer: Timers cannot be started from another thread
  • 考研复习-计算机组成原理-第二章-数据的表示和运算