《Docker:入門與實戰》學習筆記(三):倉庫

環境

  • macOS

概念

倉庫(Repository)是集中存放映像檔的地方。而註冊伺服器(Registry)是存放倉庫的地方。每個伺服器上可以有多個倉庫,而每個倉庫下面可以有多個映像檔。

自動建立

自動建立(Automated Build)功能讓使用者透過 Docker Hub 指定一個版本管理網站(目前支援 GitHub 或 BitBucket)上的專案,一旦專案有了新的 commit,則會自動執行更新映像檔。

  1. 登入 Docker Hub
  2. 點選 Settings
  3. 點選 Linked Accounts & Services
  4. 連接帳戶到 GitHub。
  5. 點選 Create Automated Build。
  6. 選取一個專案(需要有 Dockerfile)和分支(Branch)或標籤(Tag)的名稱。
  7. 指定包含 Dockerfile 的目錄,以及產製後的映像檔標籤,按下確定即開始建立。

架設和使用私有倉庫

下載並啟動一個 registry 容器,架設本地的私有映像檔倉庫服務。

1
docker run -d -p 5000:5000 registry
  • 預設情況下,會將倉庫資料存放在容器的 /tmp/registry 目錄下。

標記一個 ubuntu 映像檔為 127.0.0.1:5000/test

1
docker tag ubuntu 127.0.0.1:5000/test

上傳已標記的映像檔。

1
docker push 127.0.0.1:5000/test

curl 查看私有倉庫中的映像檔。

1
2
curl http://127.0.0.1:5000/v2/_catalog
{"repositories":["test"]}

從私有倉庫下載映像檔。

1
docker pull 127.0.0.1:5000/test