Docker Hub 使用初探
—— 魏劉宏 2019.10.26
容器的話題越來越熱,今天我也來試試容器的使用,我們以 Docker Hub 為例,
Docker Hub 官網為 https://hub.docker.com/ ,主要用于托管容器鏡像,我們以 Linux 系統 centos 為例:

詳細頁面給出了拉取的命令,不帶標簽默認拉取最新的:

點擊 View Available Tags 可查看所有標簽,其中標簽 7 應該就是標簽 centos7 的簡寫:

我們在 Docker Hub 上可以注冊一個賬號,然后可以創建倉庫,創建一個空倉庫幾乎只需填寫名字即可:

創建完賬戶后,在 Linux 系統命令列中使用 docker login 命令在本地登陸 dockerhub:

這個是我之前登陸過,所以直接就登上了,不然的話,還需要鍵入用戶名和密碼的,
登陸成功后,就可以使用 docker pull centos:7 命令拉取官方鏡像 centos 的標簽號為 7 的分支鏡像:

拉取完畢,使用 docker images 命令查看本地存在的鏡像:

可以看到剛才拉取的 centos 鏡像了,
我們先查看(docker ps)并停止(docker stop <Container Id>)正在運行的容器:

由于暫時不需要了,所以使用命令 docker rm $(docker ps -a -q) 洗掉所有容器:

再使用命令 docker rmi <Image Id> 洗掉鏡像,僅保留剛才下載的 centos 鏡像:

下面再說明一下 docker 容器使用的其它常用命令:
|
# 1. 以互動式創建并啟動容器: docker run -i -t –name dlgcy centos /bin/bash
# 2. 在容器命令列狀態下鍵入 Ctrl+P Ctrl+Q 來回到宿主機;
# 3. 查看容器運行狀態: docker ps -a
# 4. 再次進入容器: docker attach dlgcy |
我們用 docker run -i -t –name init centos:7 /bin/bash 命令啟動一個 centos:7 鏡像的互動式容器,名稱為 init :

可以看到命令列前綴已改變,我們目前處于容器中的命令列環境,
我們按 Ctrl+P Ctrl+Q 來回到宿主機后,使用命令 docker ps –a 查看運行的容器:

我們再用 docker attach init 命令重新進入 init 容器:

我們發現沒有 wget 命令,于是進行安裝:

然后我們再回到宿主機,使用命令 docker commit <exiting-container> <hub-user>/<repo-name>[:<tag>] 將容器提交為鏡像,這里實際的命令為 docker commit f9127ff7e93e dlgcy/dlgcy:centos-init :

可以看到本地已經多了個鏡像,這里是將容器提交為鏡像,如果是要將已經存在的鏡像打標簽為新的鏡像,則使用的命令為 docker tag <existing-image> <hub-user>/<repo-name>[:<tag>] ,
現在我們再使用命令 docker push <hub-user>/<repo-name>:<tag> 將提交推送到 dockerhub 服務器上:

到網頁上看看:

可以看到這個鏡像已經傳上去了,
并且,我們本地可以使用該鏡像來創建容器(使用 -p 2333:2333 這種形式進行埠映射):

這樣我們就完成了拉取、提交、推送的完整程序,可見這和 Git 的使用方法是一脈相承的,
同步首發:http://dlgcy.com/docker-hub/
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/112967.html
標籤:其他
上一篇:如何學習云計算
