溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

怎么搭建 Docker 私有倉(cāng)庫(kù)

發(fā)布時(shí)間:2021-07-22 13:48:45 來(lái)源:億速云 閱讀:147 作者:chen 欄目:大數(shù)據(jù)

本篇內(nèi)容主要講解“怎么搭建 Docker 私有倉(cāng)庫(kù)”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“怎么搭建 Docker 私有倉(cāng)庫(kù)”吧!

1. Docker Hub


1.1. 注冊(cè)登錄
  • 在 https://hub.docker.com/ 免費(fèi)注冊(cè)一個(gè) Docker 賬號(hào)。

  • 在命令行輸入 docker login 輸入用戶名及密碼來(lái)完成在命令行界面登錄 Docker Hub。

  • 可以通過 docker logout 退出登錄。

1.2. 拉取鏡像
  • 可以通過 docker search 命令來(lái)查找官方倉(cāng)庫(kù)中的鏡像,并利用 docker pull 命令來(lái)將它下載到本地。

    docker search tomcat
    docker pull tomcat


1.3. 推送鏡像
  • 可以在登錄后通過 docker push 命令來(lái)將自己的鏡像推送到 Docker Hub。

    docker tag <鏡像ID> <DockerHub用戶名>/hello-world:latest


2. 私有倉(cāng)庫(kù)


2.1. 安裝運(yùn)行 docker-registry
  • 可以通過獲取官方 registry 鏡像來(lái)運(yùn)行。默認(rèn)情況下,倉(cāng)庫(kù)會(huì)被創(chuàng)建在容器的 /var/lib/registry 目錄下。

  • 可以通過 -v 參數(shù)來(lái)將鏡像文件存放到本地的指定路徑。

    docker run --name registry -d -p 5000:5000 --restart=always -v /opt/data/registry:/var/lib/registry registry


2.2. 在私有倉(cāng)庫(kù)上上傳、搜索、下載鏡像
  • 創(chuàng)建好私有倉(cāng)庫(kù)后,就可以使用 docker tag 來(lái)標(biāo)記一個(gè)鏡像,然后推送它到倉(cāng)庫(kù)。

  • 查看本機(jī)已有的鏡像:

    docker image ls


  • 使用 docker tagtest-web:latest 這個(gè)鏡像標(biāo)記為 127.0.0.1:5000/test-web:latest 。格式為 docker tag IMAGE[:TAG] [REGISTRY_HOST[:REGISTRY_PORT]/]REPOSITORY[:TAG]

    docker tag test-web:latest 127.0.0.1:5000/test-web:latest


  • 使用 docker push 上傳標(biāo)記的鏡像:

    docker push 127.0.0.1:5000/test-web:latest


  • 用 curl 查看倉(cāng)庫(kù)中的鏡像

    curl 127.0.0.1:5000/v2/_catalog

     

    • 如果可以看到 {"repositories":["test-web"]} ,表明鏡像已經(jīng)被成功上傳了。

  • 先刪除已有鏡像,再嘗試從私有倉(cāng)庫(kù)中下載這個(gè)鏡像。

    docker image rm 127.0.0.1:5000/test-web:latest
    docker pull 127.0.0.1:5000/test-web:latest


2.3. 注意事項(xiàng)
  • 如果你不想使用 127.0.0.1:5000 作為倉(cāng)庫(kù)地址,比如想讓本網(wǎng)段的其他主機(jī)也能把鏡像推送到私有倉(cāng)庫(kù)。你就得把例如 192.168.100.100:5000 這樣的內(nèi)網(wǎng)地址作為私有倉(cāng)庫(kù)地址,這時(shí)你會(huì)發(fā)現(xiàn)無(wú)法成功推送鏡像。

  • 因?yàn)?Docker 默認(rèn)不允許非 HTTPS 方式推送鏡像。我們可以通過 Docker 的配置選項(xiàng)來(lái)取消這個(gè)限制。

  • Ubuntu 16.04+、Debian 8+、centos 7

    • 對(duì)于使用 systemd 的系統(tǒng),可以在 /etc/docker/daemon.json 中寫入如下內(nèi)容(如果文件不存在,創(chuàng)建該文件)。

      {
          "registry-mirror": [
              "https://registry.docker-cn.com"
          ],
          "insecure-registries": [
              "192.168.100.100:5000"
          ]
      }


  • Windows、Mac

    • 對(duì)于 Docker for Windows、Docker for Mac 在設(shè)置中編輯 daemon.json 增加和上邊一樣的字符串即可。

到此,相信大家對(duì)“怎么搭建 Docker 私有倉(cāng)庫(kù)”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI