sea*_*ook 19 ubuntu upstart systemd docker
我已经改变了/etc/default/docker
与DOCKER_OPTS="-H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock"
(泊坞窗1.4.1版本在Ubuntu 14.04),但它不采取对我有什么影响(在港不听2375
).似乎docker不读取这个初始配置文件,因为我发现export http_proxy
环境也不起作用.
只有sudo docker -H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock -d
作品.
这让我很困惑!
Cam*_*lva 31
根据docker文档,为Docker守护程序配置守护程序标志和环境变量的推荐方法是使用systemd drop-in文件.
因此,对于这种特定情况,请执行以下操作:
使用该命令在文本编辑器中sudo systemctl edit docker.service
打开覆盖文件docker.service
.
添加或修改以下行,替换您自己的值.
[Service]
ExecStart=
ExecStart=/usr/bin/dockerd -H tcp://127.0.0.1:2375 -H unix:///var/run/docker.sock
Run Code Online (Sandbox Code Playgroud)保存文件.
重新加载systemctl
配置.
$ sudo systemctl daemon-reload
Run Code Online (Sandbox Code Playgroud)重启Docker:
$ sudo systemctl restart docker.service
Run Code Online (Sandbox Code Playgroud)通过查看netstat
确认的输出是否dockerd
正在侦听已配置的端口来检查更改是否得到遵守.
$ sudo netstat -lntp | grep dockerd
tcp 0 0 127.0.0.1:2375 0.0.0.0:* LISTEN 3758/dockerd
Run Code Online (Sandbox Code Playgroud)Ros*_*oss 14
有关使用systemd的Debian/Ubuntu的更高版本,请参见此处.
此链接说明如何正确修改systemd单元文件以使用DOCKER_OPTS:https://github.com/docker/docker/issues/9889
基本上,您创建一个/etc/systemd/system/docker.service.d/docker.conf文件并在那里指定您的覆盖.
我必须在上述文件中执行以下操作,以在系统环境中使用DOCKER_OPTS环境变量启动docker:
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network.target docker.socket
Requires=docker.socket
[Service]
EnvironmentFile=-/etc/default/docker
ExecStart=
ExecStart=/usr/bin/docker -d $DOCKER_OPTS -H fd://
MountFlags=slave
LimitNOFILE=1048576
LimitNPROC=1048576
LimitCORE=infinity
[Install]
WantedBy=multi-user.target
Run Code Online (Sandbox Code Playgroud)
当前的docker安装过程似乎忽略了systemd单元文件.
小智 8
我遇到过同样的问题.
Ubuntu 14.10使用systemd
而不是sysv-init/upstart
.也许你应该考虑/lib/systemd/system/docker.service
改变选项.
归档时间: |
|
查看次数: |
30595 次 |
最近记录: |