持續集成 遇到問題

1.執行 docker build --no-cache --force-rm -t registry.thunisoft.com:5000/artery/zxzbtx .
報錯:
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.29/build?buildargs=%7B%7D&cachefrom=%5B%5D&cgroupparent=&cpuperiod=0&cpuquota=0&cpusetcpus=&cpusetmems=&cpushares=0&dockerfile=Dockerfile&forcerm=1&labels=%7B%7D&memory=0&memswap=0&networkmode=default&nocache=1&rm=1&shmsize=0&t=registry.thunisoft.com%3A5000%2Fartery%2Fzxzbtx%3Alatest&target=&ulimits=null: dial unix /var/run/docker.sock: connect: permission denied
Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Post http://%2Fvar%2Frun%2Fdocker.sock/v1.29/images/registry.thunisoft.com:5000/artery/zxzbtx/push?tag=latest: dial unix /var/run/docker.sock: connect: permission denied

clipboard.png

原因:gitlab-runner執行時 是以 gitlab-runner用戶來執行的 該用戶不屬于docker group 需將該用戶加入該組
解決:
首先查詢 是否有該用戶 cut -d : -f 1 /etc/passwd

clipboard1.png

然后查詢 是否存在docker組
sudo groupadd docker


clipboard2.png

然后執行 將gitlab-runner加入docker組
sudo gpasswd -a gitlab-runner docker
問題解決。

2.執行
docker build --no-cache --force-rm -t registry.thunisoft.com:5000/artery/zxzbtx .

報錯:
http: server gave HTTP response to HTTPS client

clipboard3.png

原因:這個問題是由于客戶端采用https,docker registry未采用https服務所致。
解決:在”/etc/docker/“目錄下,創建”daemon.json“文件。在文件中寫入:
{ "insecure-registries":["registry.thunisoft.com:5000"] }
然后重啟docker服務

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Spring Cloud為開發人員提供了快速構建分布式系統中一些常見模式的工具(例如配置管理,服務發現,斷路器,智...
    卡卡羅2017閱讀 134,991評論 19 139
  • Docker 是目前運維必掌握技能之一,它可以將一個開發環境的部署變得非常方便,其內部是基于一個鏡像創建容器,讓應...
    當時就嚇死我了閱讀 841評論 0 1
  • 一、Docker 簡介 Docker 兩個主要部件:Docker: 開源的容器虛擬化平臺Docker Hub: 用...
    R_X閱讀 4,410評論 0 27
  • 從現在開始 我有33個小時可以浪費 請叫我最富有的人
    天野丟閱讀 194評論 2 0
  • 一年又一年,每年過年,一朝回到解放前…… 其實也無所謂,我算是想的開,盡可能的讓家人親戚朋友開心,可惜作為...
    小燕姿閱讀 245評論 0 1