
麒麟系统离线安装 Docker - 完整详细步骤下面是在银河麒麟系统上离线安装 Docker 的完整指南包含从环境检查到安装验证的所有步骤。本文以最稳定的官方二进制包方式进行安装适用于 x86_64 和 ARM64(aarch64) 架构。一、准备工作在有网络的电脑上1.1 确认麒麟系统的 CPU 架构首先需要知道你的麒麟系统是什么架构这决定了下载哪个安装包。在麒麟系统的终端中执行uname-m输出结果说明x86_64→ Intel/AMD 64位架构aarch64→ ARM 架构如鲲鹏、飞腾处理器1.2 下载 Docker 离线安装包在能上网的电脑上访问 Docker 官方静态包下载地址x86_64 架构https://download.docker.com/linux/static/stable/x86_64/aarch64 架构https://download.docker.com/linux/static/stable/aarch64/版本选择建议对于政企内网环境推荐选择20.10.x系列如 20.10.24该版本经过大量生产验证稳定性最好。下载示例替换为实际版本号x86_64docker-20.10.24.tgzaarch64docker-20.10.24.tgz1.3 可选下载 Docker Compose如果需要 Docker Compose访问 GitHub 发布页下载对应架构的二进制文件https://github.com/docker/compose/releases选择docker-compose-linux-x86_64或docker-compose-linux-aarch64。二、将安装包传到麒麟服务器使用 U 盘、SCP 或 FTP 将下载的文件传输到麒麟服务器例如放到/opt/docker/目录# 在麒麟服务器上创建目录sudomkdir-p/opt/docker# 通过 scp 从本机上传在本机执行scpdocker-20.10.24.tgz 用户名麒麟服务器IP:/opt/docker/三、麒麟服务器上的安装步骤3.1 进入存放目录并解压cd/opt/dockertar-xzvfdocker-20.10.24.tgz解压后会得到一个docker文件夹里面包含dockerd、docker、containerd等二进制文件。3.2 复制二进制文件到系统路径# 将 docker 文件夹下的所有文件复制到 /usr/bin/sudocp-pdocker/* /usr/bin/3.3 创建 Docker 系统服务文件systemd创建服务文件/usr/lib/systemd/system/docker.servicesudovi/usr/lib/systemd/system/docker.service将以下内容粘贴进去[Unit] DescriptionDocker Application Container Engine Documentationhttps://docs.docker.com Afternetwork-online.target firewalld.service Wantsnetwork-online.target [Service] Typenotify ExecStart/usr/bin/dockerd ExecReload/bin/kill -s HUP $MAINPID KillModeprocess Restartalways RestartSec5s StartLimitBurst3 StartLimitInterval60s LimitNOFILEinfinity LimitNPROCinfinity LimitCOREinfinity Delegateyes [Install] WantedBymulti-user.target3.4 重新加载并启动 Docker 服务# 重新加载 systemd 配置sudosystemctl daemon-reload# 启动 Dockersudosystemctl startdocker# 设置 Docker 开机自启sudosystemctlenabledocker3.5 验证安装是否成功docker--version正常输出示例Docker version 20.10.24, build 297e128dockerps正常输出示例空列表但无报错CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES四、安装 Docker Compose可选# 将下载的 docker-compose 文件复制到 /usr/local/bin/sudocp/opt/docker/docker-compose-linux-xxx /usr/local/bin/docker-compose# 添加执行权限sudochmodx /usr/local/bin/docker-compose# 验证安装docker-compose--version五、配置镜像加速器强烈推荐在内网环境中不配置镜像加速会导致拉取镜像失败或超时。创建配置文件sudomkdir-p/etc/dockersudovi/etc/docker/daemon.json填入以下内容可使用阿里云、腾讯云等加速地址{registry-mirrors:[https://mirror.ccs.tencentyun.com,https://hub-mirror.c.163.com,https://docker.m.daocloud.io],data-root:/data/docker,log-driver:json-file,log-opts:{max-size:100m,max-file:5},exec-opts:[native.cgroupdriversystemd]}保存后重启 Dockersudosystemctl daemon-reloadsudosystemctl restartdocker验证加速配置是否生效dockerinfo|grep-A5Registry Mirrors六、配置非 root 用户使用 Docker可选避免每次命令都要输入sudo# 创建 docker 组通常已存在sudogroupadddocker# 将当前用户加入 docker 组sudousermod-aGdocker$USER# 使权限立即生效或重新登录newgrpdocker# 验证无需 sudodockerps七、离线环境导入镜像的方法在内网中无法直接docker pull需要从外网导出镜像再导入在外网电脑上# 拉取需要的镜像dockerpull nginx:latest# 导出为 tar 文件dockersave nginx:latest-onginx.tar将 tar 文件传到麒麟服务器后# 导入镜像dockerload-inginx.tar# 验证dockerimages八、常见问题排查问题1启动 Docker 时报 “permission denied”检查当前用户是否有权限# 将用户加入 docker 组sudousermod-aGdocker$USER# 重新登录或执行newgrpdocker问题2防火墙导致容器网络问题# 检查防火墙状态systemctl status firewalld# 如果不需要防火墙可暂时关闭根据安全策略决定sudosystemctl stop firewalld问题3内核版本过低Docker 要求内核版本 3.10 以上uname-r# 如果低于 3.10需要先升级内核问题4cgroup 相关错误如果启动容器时出现 cgroup 错误在/etc/docker/daemon.json中添加{exec-opts:[native.cgroupdriversystemd]}然后重启 Docker。九、常用 Docker 命令速查命令说明docker ps列出运行中的容器docker ps -a列出所有容器包括停止的docker images列出本地镜像docker pull 镜像名拉取镜像需联网docker run -d --name 容器名 镜像名后台运行容器docker stop 容器名停止容器docker rm 容器名删除容器docker rmi 镜像ID删除镜像docker logs 容器名查看容器日志docker exec -it 容器名 /bin/bash进入容器内部总结以上是在麒麟系统上离线安装 Docker 的完整流程。核心要点根据 CPU 架构uname -m选择对应版本的安装包推荐使用官方二进制包方式不依赖网络和仓库通过systemd 服务文件管理 Docker 守护进程配置镜像加速器解决内网拉取镜像问题离线环境下使用docker save/load传递镜像如果你的麒麟系统是申威sw_64或其他特殊架构需要寻找专门为该架构编译的 Docker 包通用的 x86/ARM 包将无法安装。