linux系统离线安装docker(分步法一键法)
创始人
2024-01-31 16:14:58
0

1  前言

在有的项目场景中,服务器是不允许连接外网的。此时若想在服务器上安装部署docker容器,就不能采用在线方式了,不过可以采取离线方式进行安装。下面我们就一起看看离线安装的两种办法。

一种是分步安装法,一种是一键安装法。

2 安装准备

首先在另一台可外网的电脑上,下载docker离线安装包。下载地址如下:

Index of linux/static/stable/x86_64/

这里我们选择稳定的社区版docker-18.06.3-ce.tgz。

下载好后,将文件docker-18.06.3-ce.tgz用WinSCP等工具,上传到不能外网的linux系统服务器上,这里用Centos7.9系统作为示例。

3 分步安装法

3.1 解压

tar -zxvf docker-18.06.3-ce.tgz

解压后的文件夹docker中文件如下所示:

3.2 复制文件

将docker中的全部文件,使用下边命令,复制到/usr/bin

cp ./docker/* /usr/bin

3.3 创建docker.service文件

cd /etc/systemd/system/
touch docker.service

3.4 编辑docker.service文件

首先打开docker.service

vim docker.service

然后将下边内容复制到docker.service。

注意,将其中的ip地址,改成您的服务器地址,其它参数不用改。

--insecure-registry=192.168.205.230

[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd --selinux-enabled=false --insecure-registry=192.168.205.230
ExecReload=/bin/kill -s HUP $MAINPID
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s[Install]
WantedBy=multi-user.target

 编辑好后,ESC键à:wq保存并退出docker.service文件。

3.5 添加可执行权限

chmod +x docker.service

3.6 加载docker.service

systemctl daemon-reload

注意,若修改了docker.service文件,则要重新加载该文件。

3.7 启动docker

systemctl start docker

3.8查看docker

systemctl status docker

docker -v

 

3.9 设置开机自启动

systemctl enable docker.service

这样每次系统启动时,docker就自动随机启动了。

4 一键安装法

如果您觉得上边的步骤繁琐,也可以用下边的办法,一键安装docker。

4.1 制作docker.service文件

在docker-18.06.3-ce.tgz同目录下,创建docker.service,打开编辑文件,文件内容与3.4节完全一样,此处不再赘述。

4.2 制作一键安装脚本

touch install.sh

打开编辑install.sh,将以下内容复制到install.sh,保存退出。

#!/bin/shecho '解压tar包'
tar -xvf $1
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

4.3 制作一键卸载脚本

Touch uninstall.sh,将以下内容复制到uninstall.sh,保存退出。

#!/bin/shecho '停止docker'
systemctl stop docker
echo '删除docker.service'
rm -f /etc/systemd/system/docker.service
echo '删除docker文件'
rm -rf /usr/bin/docker*
echo '重新加载配置文件'
systemctl daemon-reload
echo '卸载成功'

4.4 安装docker

此时docker-18.06.3-ce.tgz同目录下,还有上边创建的docker.service,install.sh,uninstall.sh这3个文件:

分别给install.sh和uninstall.sh赋予可执行权限。

chmod +x install.sh
chmod +x uninstall.sh

 开始安装

sh install.sh docker-18.06.3-ce.tgz

查看docker状态

 

5 总结

一键安装法,其实是将分步安装法的步骤,集中写到一个shell脚本,其过程实质上是一样的,优点就是在一台新的机器上安装时,能节约时间,也不容易出错。如果想卸载docker,一键操作也很方便。

6 参考

centos7-linux安装docker(离线方式) - 青阳闲云 - 博客园

Linux 离线安装docker的过程(一键式安装)_黑科技王子的博客-CSDN博客

相关内容

热门资讯

赛事火热、“南客北上”、长期参...   央视网消息:近日,随着第十二届全国大众冰雪季的全面启动以及寒假的陆续到来,各主要冰雪运动目的地客...
遥远星系里“小红点”神秘天体是...   中新网北京1月17日电 (记者 孙自法)国际知名学术期刊《自然》最新发表一篇天文学论文称,研究人...
美舰船过航台湾海峡 东部战区全...   东部战区新闻发言人就美“菲恩”号导弹驱逐舰、“西尔斯”号海洋测量船过航台湾海峡发表谈话  东部战...
全球首次!中国10万亿用电量背...   超过10万亿千瓦时的用电量这一数字在全球单一国家中尚属首次。  全社会用电量年度成绩单出炉。  ...
优良天数率超90% 绘就长江黄...   编者按:2026年是“十五五”开局之年。内需市场潜力持续释放,消费新场景不断涌现,文旅融合、冰雪...
视频丨“一半冰湖、一半沙海” ...   入冬以来,新疆冰雪旅游热潮持续升温,各大雪场迎来客流高峰。新疆巴州博湖县依托得天独厚的沙漠与湖泊...
马杜罗之子建议向国际组织寻求支...   新华社加拉加斯1月16日电 在16日举行的委内瑞拉法学家会议上,委内瑞拉总统马杜罗之子尼古拉斯·...
(经济观察)破万亿美元后再蓄新...   中新社南宁1月17日电 (记者 蒋雪林)中国海关总署近日公布的数据显示,2025年中国对东盟进出...
人民论坛网评 | “老字号”焕...   元旦假期,哈尔滨中华巴洛克历史文化保护街区累计接待游客19.8万人。百年老字号“张包铺”门前排起...
国宝画重点|不断刷新认知的“海...   汉代文明  上接先秦文脉之深厚  下启后世华章之滥觞  在历史坐标系中  占据着独一无二的地位 ...