保姆级教程!Linux 内网环境离线安装 Docker(含 docker-compose)

保姆级教程!Linux 内网环境离线安装 Docker(含 docker-compose)

保姆级教程!Linux内网环境离线安装Docker(含docker-compose)

在企业里,很多服务器都是内网隔离的,没法直接连互联网,想装Docker可难坏了不少小伙伴。今天就给大家带来一份超详细的Linux离线安装Docker指南,不管你是Ubuntu 24还是其他Linux系统,跟着步骤走,小白也能轻松搞定,还附带docker-compose部署方法,赶紧码住!

一、前期准备:下载所需文件

首先得把离线安装包和相关工具准备好,所有文件都要提前下载到能联网的电脑,再拷贝到内网服务器上。

1. Docker离线安装包

下载地址:https://download.docker.com/linux/static/stable/

  • 进入页面后,根据服务器架构选择目录(大部分服务器是x86_64架构,直接点x86_64文件夹)
  • 选择想要的版本,比如本文用的docker-29.1.3.tgz(版本号可按需选择,后缀都是.tgz)
  • 下载完成后,把这个tgz压缩包拷贝到内网服务器的任意目录(比如~/docker

2. docker-compose二进制文件

如果需要编排多个容器,得装docker-compose:

二、服务器上配置文件:3个关键文件+权限设置

在服务器上,进入Docker安装包所在的目录(比如~/docker),创建3个重要文件,复制粘贴内容即可,不用懂原理!

1. 创建docker.service文件(让Docker能开机自启)

新建文件命令:touch 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 

这个文件是Docker的系统服务配置,保证Docker能正常启动和自启。

2. 创建安装脚本(一键安装,避免手动输命令)

新建脚本文件:touch install.sh
复制以下内容到文件中:

#!/bin/sh echo '解压tar包......' tar -xvf $1 --overwrite echo '将docker目录移到/usr/bin目录下.....' cp docker/* /usr/bin/ echo '将docker.service 移到/etc/systemd/system/ 目录.....' cp docker.service /etc/systemd/system/ echo '添加文件权限.....' chmod +x /etc/systemd/system/docker.service echo '重新加载配置文件.....' systemctl daemon-reload echo '启动docker.....' systemctl start docker echo '设置开机自启.....' systemctl enable docker.service echo 'docker安装成功.....' docker -v 

3. 创建卸载脚本(后续想卸载直接用)

新建卸载脚本:touch uninstall.sh
复制以下内容:

#!/bin/sh echo '删除docker.service......' rm -f /etc/systemd/system/docker.service echo '删除docker文件......' sudo rm -rf /usr/bin/docker* sudo rm -rf /usr/bin/containerd* sudo rm -rf /var/run/docker* sudo rm -rf /usr/local/bin/docker-compose sudo rm -rf /var/lib/docker* sudo rm -rf /var/lib/containerd* echo '重新加载配置文件' systemctl daemon-reload echo '卸载成功...' 

4. 给脚本赋权限(让脚本能执行)

执行以下命令,给两个脚本添加可执行权限:

chmod +x install.sh uninstall.sh 
在这里插入图片描述

三、一键安装Docker:执行脚本就行

用root权限执行安装脚本,后面跟下载的Docker压缩包名称(比如docker-29.1.3.tgz):

sudo ./install.sh docker-29.1.3.tgz 
在这里插入图片描述

安装成功的标志

执行后会看到一系列输出,最后出现类似下面的内容,就说明安装成功了:

docker安装成功..... Docker version 28.4.0, build d8eb465 

如果不想用脚本,也可以把install.sh里的命令逐行手动执行,效果一样。

四、测试Docker:加载镜像+启动容器

离线环境下没法在线拉取镜像,所以要从其他能联网的服务器拷贝镜像文件过来,步骤如下:

1. 从外网服务器导出镜像(以Nginx为例)

在能联网的Linux服务器上,先拉取Nginx镜像,再导出为tar文件:

# 拉取Nginx镜像(版本1.21.5) docker pull nginx:1.21.5 # 导出镜像为tar文件(生成nginx.tar) docker save -o nginx.tar nginx:1.21.5 

2. 拷贝镜像到内网服务器

把生成的nginx.tar文件,通过U盘、内网传输工具等拷贝到刚安装好Docker的内网服务器上。

3. 内网服务器加载镜像

执行以下命令,加载拷贝过来的镜像:

sudo docker load -i nginx.tar 

4. 查看镜像+启动容器

# 查看已加载的镜像 sudo docker images # 启动Nginx容器(映射80端口) sudo docker run -p 80:80 nginx:1.21.5 

5. 验证服务

启动后,打开内网浏览器,输入服务器IP(比如http://192.168.1.100),能看到Nginx的默认页面,就说明Docker完全能用了!

五、配置Docker用户组:不用每次都输sudo

默认情况下,非root用户执行Docker命令都要加sudo,配置用户组后就不用了,步骤如下:

1. 查看是否存在docker用户组

getent group docker 

2. 不存在则创建用户组

如果上面的命令没有输出,执行以下命令创建:

sudo groupadd docker 

3. 将当前用户添加到docker组

把你的用户名(比如your_username)添加到docker组:

# 方法1 sudo usermod -aG docker your_username # 方法2(效果一样) sudo gpasswd -a your_username docker 

4. 生效用户组配置

执行以下命令,让配置立即生效(不用重启服务器):

newgrp docker 

之后再执行docker imagesdocker run等命令,就不用加sudo了,方便很多!

六、离线安装docker-compose

如果需要编排多个容器(比如Web+数据库),就需要装docker-compose,步骤很简单:

1. 拷贝二进制文件到指定目录

把之前下载的docker-compose-linux-x86_64文件,拷贝到/usr/local/bin/目录下,并重命名为docker-compose

# 进入文件所在目录,执行拷贝+重命名 sudo mv docker-compose-linux-x86_64 /usr/local/bin/docker-compose 

2. 给docker-compose赋权限

sudo chmod +x /usr/local/bin/docker-compose 

3. 验证安装

执行以下命令,能看到版本号就说明安装成功:

docker-compose --version 

输出示例:Docker Compose version v2.5.0

在这里插入图片描述

七、常见问题解决

  1. 执行脚本时提示“权限不够”:确保用了sudo,或者切换到root用户执行。
  2. 启动Docker失败:检查docker.service文件内容是否正确,有没有复制完整。
  3. 加载镜像时提示“no space left on device”:服务器磁盘空间不足,清理无用文件即可。
  4. 非root用户执行Docker命令报错:检查是否配置了docker用户组,有没有执行newgrp docker生效。

总结

离线安装Docker的核心就是“提前准备文件+脚本自动化部署”,虽然比在线安装多了几步准备工作,但只要跟着教程走,就能高效搞定内网环境的Docker部署。

Read more

假网站排全网第二,真官网翻五页都找不到!NanoClaw创始人破防:SEO之战,我快要输了

假网站排全网第二,真官网翻五页都找不到!NanoClaw创始人破防:SEO之战,我快要输了

整理 | 苏宓 出品 | ZEEKLOG(ID:ZEEKLOGnews) 自从 OpenClaw 爆火之后,各种“Claw”项目接连出现,其中以安全优化版 NanoClaw 最为知名。它的核心代码仅有 4000 行,却获得了 AI 大牛 Andrej Karpathy 的点赞。 可谁也没想到,这款口碑极佳的开源项目,近来竟被一个仿冒网站抢了风头。 投诉无门之下,NanoClaw 创始人 Gavriel Cohen 在 X 社交平台上无奈发文怒斥:谷歌搜索错误地将假网站排在真官网前面,不仅破坏了项目声誉,还埋下了严重的安全隐患,而他费尽心力,却只能哀叹一句——“我正在为自己的开源项目打 SEO 战,但我快要输了。” 那么,NanoClaw 究竟发生了什么?又是怎么走红的?事情还要从 OpenClaw

By Ne0inhk
曝Windows 12将于今年发布?以AI为核心、NPU成「硬件门槛」,网友吐槽:“不想要的全塞进来了”

曝Windows 12将于今年发布?以AI为核心、NPU成「硬件门槛」,网友吐槽:“不想要的全塞进来了”

整理 | 郑丽媛 出品 | ZEEKLOG(ID:ZEEKLOGnews) 当年,微软一句“Windows 10 将是最后一个版本”的表态,让不少用户以为 Windows 进入了“只更新、不换代”的时代。但几年过去,现实却完全不同。 在 Windows 11 发布之后,如今关于 Windows 12 的传闻再次密集出现。从内部代号、代码片段,到硬件厂商的暗示与 OEM 预热标签,种种线索拼在一起,勾勒出一个明显的趋势——这不会只是一次常规升级,而更像是一次围绕 AI 的平台级重构。 更关键的是,这次争议,可能远比当年 TPM 2.0 更大。 精准卡位 Windows 10 退场的时间?

By Ne0inhk
Python热度下滑、AI能取代搜索引擎?TIOBE最新榜单揭晓!

Python热度下滑、AI能取代搜索引擎?TIOBE最新榜单揭晓!

整理 | 屠敏 出品 | ZEEKLOG(ID:ZEEKLOGnews) 日前,TIOBE 发布了最新的 3 月编程语言榜单。整体来看,本月排名变化不算大,但榜单中仍然出现了一些值得关注的小波动。  AI 工具能帮大家秒懂最新编程语言趋势? 由于 2 月天数较少,3 月的榜单整体变化有限。借着这次发布,TIOBE CEO Paul Jansen 也回应了一个最近被频繁讨论的问题:为什么 TIOBE 指数仍然依赖搜索引擎统计结果?在大语言模型流行的今天,直接询问 AI 哪些编程语言最流行,是不是更简单? 对此,Jansen 的回答是否定的。 他解释称,TIOBE 指数本质上统计的是互联网上关于某种编程语言的网页数量。而大语言模型的训练数据同样来自这些网页内容,因此从信息来源来看,两者并没有本质区别。换句话说,LLM 的判断,本质上也是建立在这些网页数据之上的。 Python 活跃度仍在下降

By Ne0inhk
“裸奔龙虾”数量已达27万只,业内人士警告;AI浪潮下,中传“砍掉”翻译等16个专业;薪资谈判破裂,三星电子8.9万人要罢工 | 极客头条

“裸奔龙虾”数量已达27万只,业内人士警告;AI浪潮下,中传“砍掉”翻译等16个专业;薪资谈判破裂,三星电子8.9万人要罢工 | 极客头条

「极客头条」—— 技术人员的新闻圈! ZEEKLOG 的读者朋友们好,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。(投稿或寻求报道:[email protected]) 整理 | 郑丽媛 出品 | ZEEKLOG(ID:ZEEKLOGnews) 一分钟速览新闻点! * “裸奔龙虾”已高达27万只!业内人士警告:一旦黑客入侵,敏感信息一秒搬空 * 阿里云 CTO 周靖人代管千问模型一号位,刘大一恒管理更多团队 * 中国传媒大学砍掉翻译、摄影等 16 个本科专业,直言教育要面向人机分工时代 * 雷军放话:小米将很快推出 L3、L4 的驾驶 * 消息称原理想汽车智驾一号位郎咸朋具身智能赛道创业 * vivo 前产品经理宋紫薇创业,瞄准 AI 时尚Agent,获亿元融资 * MiniMax 发布龙虾新技能,股价暴涨超 23% * 薪资谈判破裂,三星电子

By Ne0inhk