news 2026/10/20 5:20:39

Linux 服务器通过 tgz 离线部署 Docker

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Linux 服务器通过 tgz 离线部署 Docker

文章目录

  • Linux 服务器通过 tgz 离线部署 Docker
    • 适用场景
    • 一、环境检查
    • 二、下载 Docker tgz 包
    • 三、解压并安装二进制文件
    • 四、创建 systemd 服务
    • 五、配置 Docker 守护进程
    • 六、启动 Docker 并设置开机自启
    • 七、离线镜像导入
    • 八、常见问题排查
    • 部署要点小结

Linux 服务器通过 tgz 离线部署 Docker

适用场景

当服务器无法连接公网,或者需要统一分发 Docker 二进制包时,可以使用 Docker 官方静态二进制包离线部署。该方式不依赖 yum、apt 等包管理器,适合 CentOS、麒麟、UOS 等 Linux 系统。

一、环境检查

部署前先在目标服务器上确认系统架构和内核版本:

uname-muname-rcat/etc/os-release

Docker 要求 Linux 内核版本不低于 3.10;麒麟 V10 等服务器系统通常默认满足要求。

如果服务器曾经安装过 Docker、Podman 或其他容器运行时,建议先清理旧版本,避免二进制冲突:

sudoyum remove-ydockerdocker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-enginepodman2>/dev/null||true

二、下载 Docker tgz 包

在一台可以联网的机器上,从 Docker 官方静态二进制包地址下载对应版本和架构的安装包:

https://download.docker.com/linux/static/stable/

常见目录包括:

架构目录适用环境
x86_64x86_64/Intel / AMD 服务器
aarch64aarch64/鲲鹏、飞腾、ARM64 服务器

例如下载 x86_64 架构的某个版本:

wgethttps://download.docker.com/linux/static/stable/x86_64/docker-27.5.1.tgz

下载完成后,将.tgz文件上传到目标服务器,例如放到/opt/docker-install/目录。

三、解压并安装二进制文件

进入安装包所在目录并解压:

cd/opt/docker-installtar-zxvfdocker-27.5.1.tgz

解压后会生成一个docker/目录,里面包含:

docker/ ├── containerd ├── containerd-shim-runc-v2 ├── ctr ├── docker ├── dockerd ├── docker-init ├── docker-proxy └── runc

将这些二进制文件复制到系统路径:

sudocpdocker/* /usr/bin/sudochmod+x /usr/bin/docker*sudochmod+x /usr/bin/containerd*sudochmod+x /usr/bin/runc

注意不要只复制docker命令,dockerd、containerd、runc等组件也必须一起部署,否则 Docker 无法正常启动。

四、创建 systemd 服务

执行:

sudovim/etc/systemd/system/docker.service

写入以下内容:

[Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target firewalld.service Wants=network-online.target [Service] Type=notify ExecStart=/usr/bin/dockerd ExecReload=/bin/kill -s HUP $MAINPID LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity TimeoutStartSec=0 Delegate=yes KillMode=process Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target

保存后执行:

sudochmod+x /etc/systemd/system/docker.servicesudosystemctl daemon-reload

如果服务器运行在麒麟等启用 SELinux 的系统上,且容器启动异常,可临时在ExecStart中增加--selinux-enabled=false进行排查;生产环境更建议根据安全规范配置 SELinux 策略。

五、配置 Docker 守护进程

创建配置目录和配置文件:

sudomkdir-p/etc/dockersudovim/etc/docker/daemon.json

示例配置:

{"exec-opts":["native.cgroupdriver=systemd"],"log-driver":"json-file","log-opts":{"max-size":"100m","max-file":"3"},"data-root":"/var/lib/docker"}

如果有镜像加速需求,可以补充registry-mirrors;但离线环境中通常不需要配置公网镜像源。

配置完成后再次重载:

sudosystemctl daemon-reload

六、启动 Docker 并设置开机自启

sudosystemctlenable--nowdockersudosystemctl statusdocker

查看版本和运行信息:

dockerversiondockerinfo

如果docker version能同时显示 Client 和 Server 信息,说明部署成功。

七、离线镜像导入

离线环境无法执行docker pull,镜像需要提前在有网机器上导出:

dockersave-ojava-8.tar library/java:8

上传到目标服务器后导入:

dockerload-ijava-8.tar

导入后可用以下命令确认:

dockerimages

八、常见问题排查

问题排查方法
启动失败执行journalctl -u docker -f查看详细日志
架构不匹配用uname -m确认,重新下载对应架构 tgz
旧版本冲突卸载旧 Docker/Podman,清理残留二进制文件
SELinux 拦截检查审计日志,必要时调整策略或临时关闭
磁盘空间不足通过data-root将数据目录迁移到大盘分区

部署要点小结

tgz 部署的核心流程是:确认架构 → 下载静态包 → 解压到/usr/bin→ 配置 systemd → 配置daemon.json→ 启动并验证。

相比 rpm/deb 安装,这种方式更适合内网、信创和麒麟环境;缺点是升级时需要手动替换二进制文件,并重新执行systemctl daemon-reload和systemctl restart docker。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/20 5:20:03

大模型推理性能优化:Prefill与Decode的瓶颈拆解与KV Cache调优

1. 把 Prefill 和 Decode 当成两个物种来看,是这套笔记第一个想讲明白的事聊到高级调优,核心其实就两个字:边界。Prefill 阶段和 Decode 阶段在计算形态、访存特性、延迟目标上完全是两个物种,却挤在同一套显存和同一个调度器里&a…

作者头像 李华
网站建设 2026/10/20 5:18:41

GET与POST请求中Content-Type的实战解析:从原理到避坑指南

1. 从一个被反复问到的面试题说起每次带新人或者做技术分享,只要聊到 HTTP 请求,总有人会问:“GET 和 POST 到底有什么区别?”大多数人的回答停留在“GET 参数在 URL 里,POST 参数在 body 里”“GET 不安全&#xff0c…

作者头像 李华
网站建设 2026/10/20 5:18:08

Okta身份管理实战:SSO集成、API令牌校验与用户生命周期管理

简介:Okta身份管理实战指南是一本面向信息技术管理员、安全专家与系统集成商的实战型PDF电子书,源自Packt出版社2023年推出的第二版《Okta管理快速上手》,围绕身份与访问管理的完整运维场景,系统讲解该平台的部署、配置与自动化落…

作者头像 李华
网站建设 2026/10/20 5:17:14

大模型量化实战:从显存爆炸到4bit高效部署的完整指南

先讲个我最近的真实经历:在某社区看到一位朋友发帖,说手上就一张消费级显卡,想跑一个开源7B模型,结果模型文件还没下载完,显存就报警了。下面一堆人回复“换云服务器”“上多卡”,我却觉得,这个…

作者头像 李华
网站建设 2026/10/20 5:17:05

开源飞控PCB设计实战:从Pixhawk到CUAV的硬件选型与避坑指南

简介:这份资源面向无人机开发者、飞控硬件爱好者及自动化飞行系统学习者,整理了Pixhawk、CUAV、FLOW、AIRSPEED等常见开源飞控硬件的PCB设计资料,可用于理解飞控板卡结构、参考原理图设计或进行二次开发。压缩包共143个文件,约36.…

作者头像 李华
网站建设 2026/10/20 5:16:35

多轮智能体关键失误自我恢复:PIVOTOPD设计解析

多轮智能体的落地难题,我一直觉得不在于它“能不能答”,而在于它“搞砸之后怎么办”。我自己搭任务型 Agent 时最常遇到的场景就是:用户说“帮我把周三的会议改到周四,顺便邀请 B 同学”,模型第一步把“周三”理解成了…

作者头像 李华