配置 Docker 服务

为了避免每次使用 Docker 命令时都需要切换到特权身份,可以将当前用户加入安装中自动创建的 docker 用户组:

sudo usermod -aG docker USER_NAME

Docker 服务启动时实际上是调用了 dockerd 命令,支持多种启动参数。因此,用户可以直接通过执行 dockerd 命令来启动 Docker 服务,如下面的命令启动 Docker 服务,开启 Debug 模式,并监听在本地的 2376 端口:

dockerd -D -H tcp://127.0.0.1:2376

这些选项可以写入 /etc/docker/ 路径下的 daemon.json 文件中,由 dockerd 服务启动时读取:

{
    "debug": true,
    "hosts": ["tcp://127.0.0.1:2376"]
}

操作系统对 Docker 服务进行了封装:

  • Ubuntu:使用 Upstart 来管理启动服务,Docke r服务的默认配置文件为 /etc/default/docker,可以通过修改其中的 DOCKER_OPTS 来修改服务启动的参数,例如让 Docker 服务开启网络 2375 端口的监听:

    DOCKER_OPTS="$DOCKER_OPTS -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock"
  • Centos:服务通过 systemd 来管理,配置文件路径为 /etc/systemd/system/docker.service.d/docker.conf。更新配置后需要通过 systemctl 命令来管理 Docker 服务:

    sudo systemctl daemon-reload
    sudo systemctl start docker.service

如果服务工作不正常,可以通过查看 Docker 服务的日志信息来确定问题,在 Ubuntu 或 CentOS 系统上可以执行命令 journalctl -u docker.service

每次重启 Docker 服务后,可以通过查看 Docker 信息(docker info 命令),确保服务已经正常运行。

Last updated