RHEL/CentOS 7.x使用systemd代替了service堵泽,要查看systemd來了解docker服務(wù)配置
systemctl status docker|grep Load, 發(fā)現(xiàn)是/usr/lib/systemd/system/docker.service
打開/usr/lib/systemd/system/docker.service恢总,其中[Service]內(nèi)容如下迎罗,
[Service]
Type=notify
ExecStart=/usr/bin/docker daemon -H fd://
...........
dockers registry V2 默認(rèn)使用證書進(jìn)行認(rèn)證,如要關(guān)閉認(rèn)證需在啟動(dòng)docker時(shí)加入?yún)?shù) --insecure-registry your_registry_ip:port
2種加入docker啟動(dòng)參數(shù)方法:
1. docker官方推薦片仿,新建docker.conf并添加內(nèi)容
1.1新建目錄/etc/systemd/system/docker.service.d
1.2 新建文件/etc/systemd/system/docker.service.d/docker.conf
1.3 docker.conf 添加如下內(nèi)容
[Service]
ExecStart=
ExecStart=/usr/bin/docker daemon -H fd:// --insecure-registry 172.16.11.19:5000
2.在環(huán)境變量文件里加上對(duì)應(yīng)的變量纹安,在docker服務(wù)啟動(dòng)腳本(此處為docker.service)里加載環(huán)境變量文件,看如下例子
2.1環(huán)境變量文件,在RHEL/CentOS下是/etc/sysconfig/docker厢岂,如沒則新建一個(gè)光督,添加如下內(nèi)容
INSECURE_REGISTRY=“--insecure-registry 172.16.11.19:5000”
INSECURE_REGISTRY為環(huán)境變量名,也可以是塔粒,變量?jī)?nèi)容為“--insecure-registry registry_server_name/ip:port”
在Ubuntu下 是/etc/default/docker结借,添加如下內(nèi)容
DOCKER_OPTS="$DOCKER_OPTS --insecure-registry registry_server_name/ip:port"?
2.2修改docker服務(wù)啟動(dòng)腳本(此處為/usr/lib/systemd/system/docker.service),加入如下內(nèi)容
加載環(huán)境文件卒茬,EnvironmentFile=-/etc/sysconfig/docker
增加加docker啟動(dòng)參數(shù)船老,ExecStart=/usr/bin/docker daemon -H fd:// $INSECURE_REGISTRY
注意:docker daemon 里的變量名 必須與 環(huán)境變量文件里變量名一致,如果環(huán)境變量文件里為OTHER_ARGS圃酵,
? ? ? ? ?則以上為ExecStart=/usr/bin/docker daemon -H fd:// $OTHER_ARGS
以上內(nèi)容改好后柳畔,重啟docker
systemctl daemon-reload
systemctl restart docker
最后檢查是否生效
ps aux | grep docker 查看docker daemon有沒有帶--insecure-registry 參數(shù),如沒則失敗郭赐,需檢查以上步驟薪韩,直至ps時(shí)能找到--insecure-registry
新版docker已更改設(shè)置方式,需要修改/etc/docker/daemon.json堪置,而不是修改docker.service躬存,否則報(bào)以下錯(cuò)誤
Error response from daemon: Get https://172.16.1.22:1180/v1/users/: http: server gave HTTP response to HTTPS client