©
本文档使用 PHP中文网手册 发布
许多 Linux 发行版使用 systemd 来启动 Docker 守护进程(daemon)。本文档展示了一些如何定制 Docker 设置的例子。
一旦安装了 Docker,您将需要启动 Docker 守护进程。大多数 Linux 发行版都用systemctl
来启动服务。如果您没有systemctl
,请使用service
命令。
systemctl
:$ sudo systemctl启动docker
service
:
$ sudo service docker start
如果您希望 Docker 在启动时启动,请参阅配置 Docker 以在启动时启动。
有很多方法可以为你的 Docker 守护进程(daemon)配置守护进程标志和环境变量。推荐的方法是使用平台无关daemon.json
文件,该文件默认位于Linux上/etc/docker/
。请参阅守护程序(Daemon)配置文件。
您可以使用daemon.json
配置几乎所有守护程序配置选项。以下示例配置了两个选项。您无法使用daemon.json
机制配置的一件事是 HTTP 代理。
您可能希望通过将 Docker 映像,容器和卷移动到单独的分区来控制用于 Docker 映像,容器和卷的磁盘空间。
要完成此操作,请在daemon.json
文件中设置以下标志:
{ "graph": "/mnt/docker-data", "storage-driver": "overlay"}
Docker 守护程序(daemon)使用HTTP_PROXY
,HTTPS_PROXY
以及NO_PROXY
环境变量在其启动环境来配置 HTTP 或 HTTPS 代理的行为。您无法配置
这些环境变量使用daemon.json
文件。
此示例覆盖默认docker.service
文件。
如果您位于 HTTP 或 HTTPS 代理服务器的后面,例如在公司设置中,则需要在 Docker systemd 服务文件中添加此配置。
1. 为 docker 服务创建一个 systemd 放置目录:
$ mkdir -p /etc/systemd/system/docker.service.d
2. 创建一个名为/etc/systemd/system/docker.service.d/http-proxy.conf
的文件,添加HTTP_PROXY
环境变量:
Service Environment="HTTP_PROXY=http://proxy.example.com:80/"
或者,如果您位于 HTTPS 代理服务器的后面,请创建一个名为/etc/systemd/system/docker.service.d/https-proxy.conf
的文件以添加HTTPS_PROXY
环境变量:
Service Environment="HTTPS_PROXY=https://proxy.example.com:443/"
1. 如果您有内部Docker注册表,您需要联系而无需代理,则可以通过NO_PROXY
环境变量指定它们:
Environment =“HTTP_PROXY = http://proxy.example.com:80/”“NO_PROXY = localhost,127.0.0.1,docker -registry.somecorporation.com“
或者,如果您位于HTTPS代理服务器之后:
Environment =”HTTPS_PROXY = https://proxy.example.com:443/“”NO_PROXY = localhost,127.0.0.1,docker-registry.somecorporation .COM”
2. 冲洗更改:
$ sudo systemctl 守护进程重新加载
3. 重新启动Docker:$ sudo systemctl restart docker
4. 验证已加载配置:
$ systemctl show --property =环境docker Environment = HTTP_PROXY = http://proxy.example.com:80/
或者,如果您位于HTTPS代理服务器的后面:
$ systemctl show --property =Environment docker = HTTPS_PROXY = https://proxy.example.com:443/
在没有包的情况下安装二进制文件时,您可能需要将 Docker 与 systemd 集成。为此,将两个单元文件(service
和socket
)从 github 存储库安装到/etc/systemd/system
。