Docker倉庫常用命令詳解
登入
docker login
通過執行docker login命令來輸入使用者名稱、密碼和郵箱來完成註冊和登入。註冊成功後,本地使用者目錄的.dockercfg中將儲存著使用者認證的資訊。
從倉庫拉取映象
docker pull [映象名]
搜尋映象
docker search [想要搜尋的映象名]
例如:
C:\Users\kunta>docker search centos NAME DESCRIPTION STARS OFFICIAL AUTOMATED centos The official build of CentOS. 5605 [OK] ansible/centos7-ansible Ansible on Centos7 123 [OK] jdeathe/centos-ssh OpenSSH / Supervisor / EPEL/IUS/SCL Repos - … 113 [OK] consol/centos-xfce-vnc Centos container with "headless" VNC session… 99 [OK] centos/mysql-57-centos7 MySQL 5.7 SQL database server 63 imagine10255/centos6-lnmp-php56 centos6-lnmp-php56 57 [OK] tutum/centos Simple CentOS docker image with SSH access 45 centos/postgresql-96-centos7 PostgreSQL is an advanced Object-Relational … 39 kinogmt/centos-ssh CentOS with SSH 29
我們可以根據映象是否為官方提供的依據,分為兩類。一種是類似centos這樣的基礎映象,稱為基礎或根映象。這些映象是由Docker公司建立、驗證、支援、提供的。
另外一種是類似ansible/centos7-ansible這樣型別的映象,它是由其它非官方的使用者或組織提供的,一般是通過在基礎映象上添加了某些功能然後再提交發布上來供大家使用。像ansible/centos7-ansible這個映象,它是由名為ansible這個使用者或組織維護的,帶有使用者名稱為字首,表明是某個使用者的倉庫。
自動建立
自動建立( Automated Builds)功能對於需要經常升級映象內程式來說十分方便。有時候,使用者建立了映象,安裝了某個軟體,如果軟體釋出新版本則需要手動更新映象。
要配置自動建立,包括如下的步驟:
- 建立並登入Docker Hub, 以及目標網站; *在目標網站中連線帳戶到Docker Hub。
- 在Docker Hub中配置一個 自動建立。
- 選取一個目標網站中的專案(需要含Dockerfile)和分支。
- 指定Dockerfile的位置,並提交建立。
之後,可以在DockerHub的“自動建立"頁面中跟蹤每次建立的狀態。
建立和使用私有倉庫、
安裝Docker後,可以通過官方提供的registry映象來簡單搭建一-套本地私有倉庫環境:
docker run -d -p 5000:5000 registry
docker run 命令執行時如果發現本地沒有對應的映象,則會先去拉取映象再執行。
預設情況下,會將倉庫建立在容器的/tmp/registry目錄下。可以通過-v引數來將映象檔案存放在本地的指定路徑上。
例如下面的例子將上傳的映象放到/opt/data/registry目錄:
docker run -d -p 5000:5000 -v /opt/data/registry:/tmp/registry registry
此時,在本地將啟動- 個私有倉庫服務,監聽埠為5000。
實戰
首先在一臺伺服器機子上搭建好私有倉庫,其地址為10.0.2.2:5000。然後再試圖從機子上上傳和下載映象。
在本地上檢視已有映象:
C:\Users\kunta>docker images REPOSITORY TAG IMAGE ID CREATED SIZE hub.c.163.com/kuntang/lingermarket latest c7a70a3810cf 23 months ago 418MB ubuntu2 16.04 1196ea15dad6 2 years ago 336MB ubuntu latest 1196ea15dad6 2 years ago 336MB hub.c.163.com/public/ubuntu 16.04-tools 1196ea15dad6 2 years ago 336MB hub.c.163.com/public/centos 6.7-tools b2ab0ed558bb 2 years ago 602MB
使用docker tag命令把映象的倉庫標記為私有倉庫機子地址(格式為:docker tag IMAGE[:TAG] [REGISTRYHOST/]NAME[:TAG]):
docker tag ubuntu2:16.04 10.0.2.2:5000/test docker images
使用docker push命令上傳映象:
docker push 10.0.2.2:5000/test
用curl檢視私有倉庫的映象
curl http://10.0.2.2:5000/v1/search
可以看出映象已經上次成功。
現在可以到任意一臺能訪問到10.0.2.2地址的機器去下載這個映象了:
docker pull 10.0.2.2:5000/test
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援碼農教程。