服务器docker环境的几个小问题处理

安装

服务器系统是Centos,网上教程太多,不赘述,直接上链接:
https://www.runoob.com/docker/centos-docker-install.html

修改docker默认镜像路径

Docker 默认安装的情况下,会使用 /var/lib/docker/ 目录作为存储目录,用以存放拉取的镜像和创建的容器等。不过由于此目录一般都位于系统盘,我们的硬盘是挂载在home目录下,所以系统盘比较小,因此需要Docker 的存储目录。

[root@localhost ~]# vi /etc/docker/daemon.json
# 添加下面内容后重启
{
  "data-root": "/home/docker"
}

使用docker info命令可以看到Docker Root Dir的路径已经是/home/docker

启动docker远程访问

修改docker.service启动文件
找到Service,把ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock替换成ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
完整的内容如下:

# vi /usr/lib/systemd/system/docker.service
[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 -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
#ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
ExecReload=/bin/kill -s HUP $MAINPID
TimeoutSec=0
RestartSec=2
Restart=always

重启Docker

systemctl daemon-reload
systemctl restart docker

Docker远程访问的端口是2375,为安全起见,我们只能允许内网网段访问,因此需对防火墙端口进行设置

firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.0.0/24" port protocol="tcp" port="2375" accept"
firewall-cmd --reload

你可能感兴趣的:(服务器docker环境的几个小问题处理)