作業系統版本:centos7
docker 當前版本
[root@localhost data]# docker version
client:
version: 18.09.6
api version: 1.39
go version: go1.10.8
git commit: 481bc77156
built: sat may 4 02:34:58 2019
os/arch: linux/amd64
experimental: false
server: docker engine - community
engine:
version: 18.09.6
api version: 1.39 (minimum version 1.12)
go version: go1.10.8
git commit: 481bc77
built: sat may 4 02:02:43 2019
os/arch: linux/amd64
experimental: false
建立 /data/config.yml 檔案
/data/config.yml 檔案中寫入如下內容:
執行 docker registry
[root@localhost ~]# docker run -d -p 5000:5000 -v /opt/data/registry:/var/lib/registry -v /data/config.yml:/etc/docker/registry/config.yml registry
如果遇到:docker0: iptables: no chain/target/match by that name 錯誤
解決辦法:
在centos 7下使用類似nginx之類的web server,啟動docker時有時會報以下錯誤:
docker0: iptables: no chain/target/match by that name.
解決方法:
service docker restart
重啟docker後:
iptables -l
可以看到iptables裡面多出了chain docker的選項。
經驗為:在啟動firewalld之後,iptables被啟用,此時沒有docker chain,重啟docker後被加入到iptable裡面。
測試拉取乙個 hello-world 映象
[root@localhost ~]# docker pull hello-world
接下來修改一下該映象的tag
[root@localhost ~]# docker tag hello-world 192.168.130.132:5000/hello-world
push到私有倉庫
[root@localhost ~]# docker push 192.168.130.132:5000/hello-world
docker registry https問題
clien 端解決方法
在」/etc/docker/「目錄下,建立」daemon.json「檔案。在檔案中寫入一下內容,注意 insecure-registries 是 docker registry 的位址
參考文章:
server 端解決方法
因為docker從1.3.x之後,與docker registry互動預設使用的是https,然而此處搭建的私有倉庫只提供http服務,所以當與私有倉庫互動時就會報上面的錯誤。為了解決這個問題需要在啟動docker server時增加啟動引數為預設使用http訪問。修改docker啟動配置檔案:
[root@localhost ~]# vim /usr/lib/systemd/system/docker.service
找到 execstart 這一行,在後面加入 --insecure-registry 192.168.130.132:5000,192.168.130.132:5000 是服務端位址。
execstart=/usr/bin/dockerd -h fd:// --containerd=/run/containerd/containerd.sock --insecure-registry 192.168.130.132:5000
修改後重啟docker
[root@localhost ~]# systemctl daemon-reload
[root@localhost ~]# systemctl restart docker
docker搭建私有倉庫
registry映象 docker pull registry 二 通過該映象啟動乙個容器 docker run d p 5000 5000 v opt data registry tmp registry registry 注 預設情況下,會將倉庫存放於容器內的 tmp registry目錄下,這...
Docker搭建私有倉庫
docker私有倉庫 1 私有倉庫搭建與配置 1 拉取私有倉庫映象 此步省略 docker pull registry 2 啟動私有倉庫容器 docker run di name registry p 5000 5000 registry 3 開啟瀏覽器 輸入位址看到 表示私有倉庫搭建成功並且內容為...
docker搭建私有倉庫
先吧私有倉庫down下來,這需要一點時間,剛好這中間的時間,我們可以準備一下其他的東西 docker pull registry 緊接著,registry需要https執行環境,所以來生成我們自己的證書 簡單說明一下,目前的registry版本是2,之前的1是支援非ssl的,docker在0.9以下...