目录
企业纯内网二进制完美部署Docker(20.10.7版本)
Docker下载
上传解压
systemd管理docker
普通用户管理Docker
自定义网段
更改存储路径
如果有数据
无数据
启动并设置开机启动
docker命令补全方法
1.复制文件
2.安装bash-completion?
?3.刷新生效
4、测试
企业纯内网二进制完美部署Docker(20.10.7版本)
近期由于公司业务需求,需要使用到Docker。
平常有网环境,直接yum可以安装完成。但是由于服务器在纯内网环境,无法访问公网,所有无法在线直接安装Docker,需要另想方法完成部署安装。
(1)找一台有网机器,使用yum(yumdownloader)把docker包和依赖下载下来,上传在安装?
(2)二进制安装Docker(比较复杂,但是能更好理解和管理Docker,我选择后者)
Docker下载
Docker版本:20.10.7
Docker版本下载地址:https://download.docker.com/linux/static/stable/x86_64/
上传解压
tar zxvf docker-20.10.7.tgz
mv docker/* /usr/bin
systemd管理docker
cat > /usr/lib/systemd/system/docker.service << EOF
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
Requires=docker.socket
[Service]
Type=notify
ExecStart=/usr/bin/dockerd
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always
StartLimitBurst=3
StartLimitInterval=60s
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TasksMax=infinity
Delegate=yes
KillMode=process
OOMScoreAdjust=-500
[Install]
WantedBy=multi-user.target
EOF
cat > /usr/lib/systemd/system/docker.sock << EOF
[Unit]
Description=Docker Socket for the API
[Socket]
ListenStream=/var/run/docker.sock
SocketMode=0660
SocketUser=root
SocketGroup=docker
[Install]
WantedBy=sockets.target
EOF
普通用户管理Docker
groupadd docker
#添加docker组,二进制不会自动添加的,yum会
usermod -a -G docker user1
#把要管理的用户添加到组里面就行
这样在docker组的用户,也有权限管理docker,这边是因为在docker.sock定义了以docker组启动
自定义网段
mkdir /etc/docker
cat > /etc/docker/daemon.json << EOF
{
"bip":"10.10.10.1/24"
}
EOF
纯内网Docker-hub无法使用,这里就定义网段,启用初始就会直接定义网段
更改存储路径
docker的默认路径是/var/lib/docker
但是有时间这个空间很小,我们需要把目录迁移到足够大的磁盘下
如果有数据
systemctl stop docker
mkdir /data/service/docker -p
mv /var/lib/docker/* /data/service/docker/
#迁移数据
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --graph /data/service/docker
无数据
mkdir /data/service/docker -p
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd --graph /data/service/docker
启动并设置开机启动
systemctl daemon-reload
systemctl start docker
systemctl enable docker
docker命令补全方法
1.复制文件
通过yum安装相同版本的docker。将 /usr/share/bash-completion/completions/docker 文件拷贝到二进制安装的docker服务器上的 /usr/share/bash-completion/completions/ 目录下
2.安装bash-completion?
yum install -y bash-completion
?3.刷新生效
source /usr/share/bash-completion/completions/docker
source /usr/share/bash-completion/bash_completion
4、测试
[root@localhost ~]# docker
attach context exec import logout port rm service system version
build cp export info logs ps rmi stack tag volume
builder create help inspect network pull run start top wait
commit diff history kill node push save stats trust
config engine image load pause rename search stop unpause
container events images login plugin restart secret swarm update
|