0
点赞
收藏
分享

微信扫一扫

docker的离线安装以及本地化配置


                                          docker的离线安装以及本地化配置

首先需要说明离线安装的适用场景:项目具有私有云,内外网分离,安全性要求比较高,相对在线安装,离线安装优势很大,方便,灵活,不需要配置yum源以及考虑整体网络环境的事情了,只需要关心局域网的网络就可以了。

废话不多说了,离线安装有RPM包安装方式,二进制安装包方式,源码编译安装方式,最为简便的方式为二进制安装包方式(没有rpm依赖问题,预编译和编译中,缺少依赖而失败的问题)。

一,下载docker的二进制安装包

​​https://download.docker.com/linux/static/stable/x86_64/​​,根据需要选择适合的版本,我的机器是centos7的因此选择的是稳定版本19.03.9,该版本的下载地址为:

​​https://download.docker.com/linux/static/stable/x86_64/docker-19.03.9.tgz​​     这个网站是docker官方网站,速度还可以,比较人性话哦。

二,上传安装包到服务器,解压,移动解压的内容到系统环境变量路径内。

不得不说go语言的一大特色是所有东西都在一个文件里,文件比较大,同样二进制安装也是有限的几个文件,每个文件都几十兆。解压后的目录长这样:

[root@centos6 docker]# pwd
/root/docker
[root@centos6 docker]# ls -alh
total 191M
drwxrwxr-x  2 1000 1000  138 Nov 29 13:30 .
dr-xr-x---. 4 root root  203 Nov 29 13:30 ..
-rwxr-xr-x  1 1000 1000  32M May 15  2020 containerd
-rwxr-xr-x  1 1000 1000 5.8M May 15  2020 containerd-shim
-rwxr-xr-x  1 1000 1000  18M May 15  2020 ctr
-rwxr-xr-x  1 1000 1000  59M May 15  2020 docker
-rwxr-xr-x  1 1000 1000  66M May 15  2020 dockerd
-rwxr-xr-x  1 1000 1000 693K May 15  2020 docker-init
-rwxr-xr-x  1 1000 1000 2.8M May 15  2020 docker-proxy
-rwxr-xr-x  1 1000 1000 9.2M May 15  2020 runc

不到60M的安装包解压成了190M,压缩率还是可以的,dockerd是其中的主要执行文件哦(并不是谁体积大谁就重要)

mv docker/* /usr/local/bin/   #移动解压出的文件夹下的内容到系统环境变量路径。

三,将docker加入系统服务,设置开启启动并启动docker服务。

[root@centos6 ~]# vim /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/local/bin/dockerd --graph=/var/lib/docker
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三要素之一  仓库是以国外的docker镜像站为基准的,我们离的太远以及各种因素导致网速不够,影响docker的使用体验,需要将该软件连接的仓库改为国内的地址,提高使用docker的体验。这一步使用脚本即可,脚本内容如下:

#!/bin/bash
#cp /usr/lib/systemd/system/docker.service /etc/systemd/system/
#sed -i '/ExecStart/d' /etc/systemd/system/docker.service
#sed -i '13a ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock --registry-mirror=https://b0j89uo8.mirror.aliyuncs.com -H unix:///var/run/docker.sock' /etc/systemd/system/docker.service
echo "{
\"registry-mirrors\": [\"https://b0j89uo8.mirror.aliyuncs.com\"]
}
" >/etc/docker/daemon.json
systemctl daemon-reload
systemctl restart docker

验证:

[root@centos6 ~]# docker info
Client:
Debug Mode: false

Server:
Containers: 0 #实例没有 是0
Running: 0
Paused: 0
Stopped: 0
Images: 0 #镜像也没有
Server Version: 19.03.9
。。。。。。。。。。中间的一部分省略了
Experimental: false
Insecure Registries:
127.0.0.0/8
Registry Mirrors:
https://b0j89uo8.mirror.aliyuncs.com/
Live Restore Enabled: false
Product License: Community Engine

可以看到已经注册了仓库,地址为阿里云仓库。任意运行一个镜像生成容器,docke info命令可以看到大体信息:

[root@centos6 ~]# docker info
Client:
Debug Mode: false

Server:
Containers: 3
Running: 1
Paused: 0
Stopped: 2
Images: 1
Server Version: 19.03.9

。。。。。。。。。。。。。省略

运行了三个容器,两个停止掉了,一个正常运行。镜像就一个。

举报

相关推荐

0 条评论