GitLab CI 使用 InsecureRegistry

繼上次分享後,有讀者留言問 dind 使用 insecure-registry 相關的問題。

請教個問題,基於gitlab CI做java項目持續集成,用到了docker in docker, docker build使用的Dockerfile中使用了一個insecure registry,在dind的容器中如何配置insecure registry

我的回覆是:

首先, 不推薦使用 insecure registry 畢竟有其固有限制, 如果一定要用的話, 其實在 services 層配置一個 command 就可以,這也是最簡單的, 例如:

services:
  - name: docker:dind
    command: ["--insecure-registry=myregistry:5000"] 

由於留言字數的限制,就單獨寫個小文來回復下。

這個做法實際效果如下:

(Tao) ➜  kubernetes git:(master) ✗ sudo docker run -d --privileged --name dind  docker:dind --insecure-registry="myregistry:5000"
8fb68865638ebc65255bb568fbe1fd6b4ed4fca771075d8e55ebbbbdf0aef6d2 
(Tao) ➜  kubernetes git:(master) ✗ sudo docker top dind
UID                 PID                 PPID                C                   STIME               TTY                 TIME                CMD
root                18270               18252               1                   11:27               ?                   00:00:00            dockerd --host=unix:///var/run/docker.sock --host=tcp://0.0.0.0:2375 --insecure-registry=myregistry:5000
root                18328               18270               0                   11:27               ?                   00:00:00            docker-containerd --config /var/run/docker/containerd/containerd.toml

當然這樣做是可以解決問題,但還是建議不要使用 insecure-registry 畢竟這不是個安全的做法而且也有其限制。限制的部分不是這次的重點,也就不多做解釋了。


可以通過下面二維碼訂閱我的文章公衆號【MoeLove】

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