跟我一起學docker(五)--倉庫

跟我一起學docker(五)--倉庫

來自專欄 IT人故事會

1.Docker Hub

倉庫是集中存放鏡像的地方。

目前Docker官方倉庫維護了一個公共倉庫hub.docker.com,其中已經包括15000多個的鏡像。

大部分需求都可以通過在Docker Hub中直接下來鏡像來實現。

登錄

可以通過執行docker login命令來輸入用戶名、密碼和郵箱來完成註冊登錄。

基本操作

用戶無需登錄可以通過 docker search命令來查找官方倉庫中的鏡像,並利用docker pull 下載到本地,可以通過docker push 命令將本地鏡像推送到docker hub。

先tag一下複製一個鏡像,然後把鏡像push到伺服器上

2.創建和使用私有倉庫

使用registry鏡像創建私有倉庫

可以通過docker官方提供的registry鏡像來搭建一套本地私有倉庫。

鏡像地址:hub.docker.com/_/regist

命令:

docker run -eSEARCH_BACKEND=sqlalchemy-eSQLALCHEMY_INDEX_DATABASE=sqlite:////tmp/docker-registry.db-d --name registry -p 5000:5000 registry

-e設定環境變數

-d從後台啟動的方式鏡像啟動

-name 啟動的容器起個名字

-p 暴露埠,容器內部的5000綁定到宿主機的5000埠上。

registry鏡像本身

SEARCH_BACKEND=sqlalchemy默認索引是可以查詢的

參考地址:

github.com/docker/docke

hub.docker.com/_/regist

自動下載並啟動一個registry容器,創建本地的私有倉庫服務。

默認倉庫創建在/tmp/registry目錄下。

上傳到本地的私有倉庫中,

報錯了:http:server gave HTTP response to HTTPS client 後面會告訴你如何解決往下看。

docker啟動參數配置:

環境:centos7解決上邊的問題

配置文件:/lib/systemd/system/docker.service

修改成:

#ExecStart=/usr/bin/dockerd

ExecStart=/usr/bin/dockerd-H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock --insecure-registry192.168.100.146:5000

(此處默認2375為主管理埠,unix:///var/run/docker.sock用於本地管理,7654是備用的埠)

重啟服務,在啟動一個私有倉庫的容器,然後push到私有倉庫中

參考地址:docs.docker.com/engine/

3.倉庫加速服務

加速下載官方鏡像。

推薦服務:dashboard.daocloud.io/

點擊加速器:dashboard.daocloud.io/m

配置Docker加速器:

下載第三方官方倉庫。

4.倉庫管理

Registry Web UI

用於鏡像的查詢,刪除。

鏡像地址:hub.docker.com/r/atcol/

啟動命令:運行下面的命令的時候建議先配置上邊講的加速哦,因為要下載的東西有點多。

docker run -d --nameregistry_ui -p 8080:8080 -e REG1=172.17.0.2:5000/v1/atco

查看埠是否啟用

查看logs

訪問地址:

IP地址:8080

推薦閱讀:

跟我一起學docker(一)--認識
docker && kubernetes
跟我一起學docker(三)--鏡像的基本操作

TAG:Docker | 容器雲 | 容器虛擬化 |