欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

docker倉庫的搭建(docker搭建本地倉庫)

方一強2年前7瀏覽0評論

Docker是現今最受歡迎的開發、部署應用程序的工具之一,它提供了輕量級的虛擬化、快速部署和無縫遷移等優勢,廣泛運用于云計算、微服務架構和DevOps等領域。而Docker倉庫則是存儲和共享Docker鏡像的中心化服務,對于企業和開發人員來說,它是非常重要的一環。

搭建Docker倉庫可以實現私有化、定制化、安全化等需求,同時也可以提升鏡像的部署速度和可用性,讓開發過程更加高效方便。下面是基于Docker Registry v2.0版本的一些搭建步驟和注意事項。

$ sudo docker pull registry:2
$ sudo docker run -d -p 5000:5000 --restart=always --name registry \
-v /opt/docker/data:/var/lib/registry \
-v /opt/docker/auth:/auth \
-e REGISTRY_AUTH=htpasswd \
-e REGISTRY_AUTH_HTPASSWD_REALM="Registry Realm" \
-e REGISTRY_AUTH_HTPASSWD_PATH=/auth/registry.passwd \
-e REGISTRY_HTTP_TLS_CERTIFICATE=/auth/domain.crt \
-e REGISTRY_HTTP_TLS_KEY=/auth/domain.key \
registry:2

以上命令在本地host的5000端口啟動了一個Docker Registry,其中

  • registry:2 表示使用的鏡像版本為Docker Registry v2.0
  • -v /opt/docker/data:/var/lib/registry 表示存儲Registry鏡像數據的目錄,可以替換為其他目錄
  • -v /opt/docker/auth:/auth 表示存儲用戶認證信息的目錄,必須為絕對路徑,且要在目錄下創建registry.passwd文件
  • -e REGISTRY_AUTH=htpasswd 表示啟用基于密碼的認證模式
  • -e REGISTRY_AUTH_HTPASSWD_REALM="Registry Realm" 表示認證領域的名稱,可以任意設置
  • -e REGISTRY_AUTH_HTPASSWD_PATH=/auth/registry.passwd 表示用戶密碼文件的路徑,必須與上一步中的目錄對應
  • -e REGISTRY_HTTP_TLS_CERTIFICATE=/auth/domain.crt 表示啟用TLS加密通道,需要提供證書文件和私鑰文件
  • -e REGISTRY_HTTP_TLS_KEY=/auth/domain.key 表示證書私鑰文件的路徑

需要注意的是,開啟基于密碼的認證模式時,必須提供認證文件registry.passwd,格式為用戶名:密碼(經過base64加密),可以使用htpasswd程序生成。

$ sudo apt-get install apache2-utils
$ sudo htpasswd -cB /opt/docker/auth/registry.passwd username

上述命令在/opt/docker/auth目錄下創建了registry.passwd文件,并添加了一個用戶"username",如果需要再添加其他用戶,可以去掉"-c"選項。

完成上述步驟后,使用docker tag和docker push命令將本地的鏡像上傳到Registry,如:

$ sudo docker tag image-name localhost:5000/image-name
$ sudo docker push localhost:5000/image-name

其中image-name為鏡像名稱,可以使用docker images命令查看本地已經構建的鏡像。

最后,通過docker pull命令從Registry獲取鏡像即可在其他機器上部署相同的應用了:

$ sudo docker pull localhost:5000/image-name

至此,我們已經成功地搭建了Docker Registry,并實現了私有化、安全化的需求,更多的應用場景可以參考官方文檔和開源社區中的各種實踐案例。