Centos7-Docker1.12開啟守護進程(遠程調用)


本文講述了Docker1.12.6在Linux下開啟守護進程(遠程調用),理論上來說其他版本也是一樣的改法,博主參考很多都是巨坑,綜合自己實戰分享給大家,如有錯誤請留言;

- 修改配置

1.修改 docker.service 文件

1
vi /usr/lib/systemd/system/docker.service
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
[Unit]
Description=Docker Application Container Engine
Documentation=http://docs.docker.com
After=network.target
Wants=docker-storage-setup.service
Requires=docker-cleanup.timer

[Service]
## 我將原本的給注釋掉了,留個備份靠譜一點 ##
#Type=notify
#NotifyAccess=all
#KillMode=process
#EnvironmentFile=-/etc/sysconfig/docker
#EnvironmentFile=-/etc/sysconfig/docker-storage
#EnvironmentFile=-/etc/sysconfig/docker-network
#Environment=GOTRACEBACK=crash
#Environment=DOCKER_HTTP_HOST_COMPAT=1
#Environment=PATH=/usr/libexec/docker:/usr/bin:/usr/sbin
#ExecStart=/usr/bin/dockerd-current \
# --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
# --default-runtime=docker-runc \
# --exec-opt native.cgroupdriver=systemd \
# --userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
# $OPTIONS \
# $DOCKER_STORAGE_OPTIONS \
# $DOCKER_NETWORK_OPTIONS \
# $ADD_REGISTRY \
# $BLOCK_REGISTRY \
# $INSECURE_REGISTRY
#ExecReload=/bin/kill -s HUP $MAINPID
#LimitNOFILE=1048576
#LimitNPROC=1048576
#LimitCORE=infinity
#TimeoutStartSec=0
#Restart=on-abnormal
#MountFlags=slave

## 主要就是這一段,其實大部分都一樣就是 ExecStart 的第一句不一樣而已,但是依舊建議Copy ##

Type=notify
ExecStart=/usr/bin/docker-current daemon --tls=false -H unix:///var/run/docker.sock -H tcp://192.168.18.183:2375 \
--add-runtime docker-runc=/usr/libexec/docker/docker-runc-current \
--default-runtime=docker-runc \
--exec-opt native.cgroupdriver=systemd \
--userland-proxy-path=/usr/libexec/docker/docker-proxy-current \
$OPTIONS \
$DOCKER_STORAGE_OPTIONS \
$DOCKER_NETWORK_OPTIONS \
$ADD_REGISTRY \
$BLOCK_REGISTRY \
$INSECURE_REGISTRY
ExecReload=/bin/kill -s HUP $MAINPID
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
TimeoutStartSec=0
Delegate=yes
KillMode=process

[Install]
WantedBy=multi-user.target

- 重點

忘啥不能忘了它倆,只要是修改了 docker.service 文件就必須執行以下以下命令。

1
2
systemctl daemon-reload
systemctl restart docker.service

2.測試

1
2
3
[root@localhost ~]# ps axu | grep docker
root 9708 0.0 0.1 808312 29172 ? Ssl 17:57 0:00 /usr/bin/dockerd-current --tls=false -H unix:///var/run/docker.sock -H tcp://192.168.18.183:2375 --add-runtime docker-runc=/usr/libexec/docker/docker-runc-current --default-runtime=docker-runc --exec-opt native.cgroupdriver=systemd --userland-proxy-path=/usr/libexec/docker/docker-proxy-current
root 9721 0.0 0.0 362836 8140 ? Ssl 17:57 0:00 /usr/bin/docker-containerd-current -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --shim docker-containerd-shim --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --runtime docker-runc --runtime-args --systemd-cgroup=true
1
2
[root@localhost ~]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE

至此說明 docker 守護進程已經打開,我們在瀏覽器輸入 http://192.168.18.183:2375 得到 {"message":"page not found"} 則表示我們配置一切正確

- 異常情況

有人說 修改完配置 docker images 顯示錯誤(表示未曾遇到),那么請輸入

1
2
export DOCKER_HOST="http://192.168.18.183:2375"
source /etc/profile


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM