docker registry v2 取消安全認證設置

原文鏈接:https://www.jianshu.com/p/9527b485929f

RHEL/CentOS 7.x使用systemd代替了service,要查看systemd來了解docker服務配置

systemctl status docker|grep Load, 發現是/usr/lib/systemd/system/docker.service

打開/usr/lib/systemd/system/docker.service,其中[Service]內容如下,

[Service]

Type=notify

ExecStart=/usr/bin/docker daemon -H fd://

...........

dockers registry V2 默認使用證書進行認證,如要關閉認證需在啓動docker時加入參數 --insecure-registry your_registry_ip:port

2種加入docker啓動參數方法:

1. docker官方推薦,新建docker.conf並添加內容

1.1新建目錄/etc/systemd/system/docker.service.d

1.2 新建文件/etc/systemd/system/docker.service.d/docker.conf

1.3 docker.conf 添加如下內容

[Service]

ExecStart=

ExecStart=/usr/bin/docker daemon -H fd:// --insecure-registry 172.16.11.19:5000

2.在環境變量文件里加上對應的變量,在docker服務啓動腳本(此處爲docker.service)里加載環境變量文件,看如下例子

2.1環境變量文件,在RHEL/CentOS下是/etc/sysconfig/docker,如沒則新建一個,添加如下內容

INSECURE_REGISTRY=“--insecure-registry 172.16.11.19:5000”

INSECURE_REGISTRY爲環境變量名,也可以是,變量內容爲“--insecure-registry registry_server_name/ip:port”

在Ubuntu下 是/etc/default/docker,添加如下內容

DOCKER_OPTS="$DOCKER_OPTS --insecure-registry registry_server_name/ip:port" 

2.2修改docker服務啓動腳本(此處爲/usr/lib/systemd/system/docker.service),加入如下內容

加載環境文件,EnvironmentFile=-/etc/sysconfig/docker

增加加docker啓動參數,ExecStart=/usr/bin/docker daemon -H fd:// $INSECURE_REGISTRY

注意:docker daemon 裏的變量名 必須與 環境變量文件裏變量名一致,如果環境變量文件裏爲OTHER_ARGS,

         則以上爲ExecStart=/usr/bin/docker daemon -H fd:// $OTHER_ARGS

以上內容改好後,重啓docker

systemctl daemon-reload

systemctl restart docker

最後檢查是否生效

ps aux | grep docker 查看docker daemon有沒有帶--insecure-registry 參數,如沒則失敗,需檢查以上步驟,直至ps時能找到--insecure-registry

新版docker已更改設置方式,需要修改/etc/docker/daemon.json,而不是修改docker.service,否則報以下錯誤

Error response from daemon: Get https://172.16.1.22:1180/v1/users/: http: server gave HTTP response to HTTPS client

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章