您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何在CentOS 7.5系統中安裝Docker,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
undefined
Docker的優點如下:
1、簡化程序
Docker讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然后發布到任何流行的Linux機器上,便可以實現虛擬化。Docker改變了虛擬化的方式,使開發者可以直接將自己的成果放入Docker中進行管理。方便快捷已經是Docker的最大優勢,過去需要用數天乃至數周的任務,在Docker容器的處理下,只需要數秒就能完成。
2、避免選擇恐懼癥
如果你有選擇恐懼癥,還是資深患者。Docker幫你打包你的糾結!比如Docker鏡像;Docker鏡像中包含了運行環境和配置,所以Docker可以簡化部署多種應用實例工作。比如Web應用、后臺應用、數據庫應用、大數據應用比如Hadoop集群、消息隊列等等都可以打包成一個鏡像部署。
3、節省開支
一方面,云計算時代到來,使開發者不必為了追求效果而配置高額的硬件,Docker改變了高性能必然高價格的思維定勢。Docker與云的結合,讓云空間得到更充分的利用。不僅解決了硬件管理的問題,也改變了虛擬化的方式。
Docker的架構
Docker daemon(Docker守護進程)
Docker daemon是一個運行在宿主機(DOCKER-HOST)的后臺進程。可通過 Docker客戶端與之通信。
Client( Docker客戶端)
Docker客戶端是Docker的用戶界面,它可以接受用戶命令和配置標識,并與Docker daemon通信。圖中,docker build等都是Docker的相關命令。
Images(Docker鏡像)
Docker鏡像是一個只讀模板,它包含創建 Docker容器的說明。它和系統安裝光盤有點像,使用系統安裝光盤可以安裝系統,同理,使用Docker鏡像可以運行Docker鏡像中的程序。
Container(容器)
容器是鏡像的可運行實例。鏡像和容器的關系有點類似于面向對象中,類和對象的關系。可通過Docker API或者CLI命令來啟停、移動、刪除容器。
Registry
Docker Registry是一個集中存儲與分發鏡像的服務。構建完 Docker鏡像后,就可在當前宿主機上運行。但如果想要在其他機器上運行這個鏡像,就需要手動復制。此時可借助Docker Registry來避免鏡像的手動復制。
一個Docker Registry可包含多個Docker倉庫,每個倉庫可包含多個鏡像標簽,每個標簽對應一個Docker鏡像。這跟Maven的倉庫有點類似,如果把Docker Registry比作Maven倉庫的話,那么Docker倉庫就可理解為某jar包的路徑,而鏡像標簽則可理解為jar包的版本號。
Docker Registry可分為公有Docker Registry和私有Docker Registry。最常用的Docker Registry莫過于官方的Docker Hub,這也是默認的Docker Registry。Docker Hub上存放著大量優秀的鏡像,我們可使用Docker命令下載并使用。
Docker 的安裝
Docker是一個開源的商業產品,有兩個版本:社區版(Community Edition,縮寫為 CE)和企業版(Enterprise Edition,縮寫為 EE)。企業版包含了一些收費服務,個人開發者一般用不到。下面的介紹都針對社區版。
Docker CE的安裝請參考官方文檔,我們這里以CentOS為例:
1、Docker要求 CentOS 系統的內核版本高于3.10
通過uname -r 命令查看你當前的內核版本
# uname -r
查看操作系統版本
# cat /etc/redhat-release
2、卸載舊版本(如果安裝過舊版本的話)
# yum remove docker docker-common docker-selinux docker-engine
3、查看 yum 源地址
# yum repolist
4、設置yum源,并更新 yum 的包索引
# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
# yum makecache fast
5、可以查看所有倉庫中所有docker版本,并選擇特定版本安裝
# yum list docker-ce --showduplicates | sort -r
6、安裝docker
# yum install docker-ce #由于repo中默認只開啟stable倉庫,故這里安裝的是穩定版18.03.1
# yum install <FQPN> # 例如:yum -y install docker-ce-18.03.1.ce
7、啟動并加入開機啟動
# systemctl start docker
# systemctl enable docker
8、驗證安裝是否成功(有client和service兩部分表示docker安裝啟動都成功了)
# docker version
9、卸載docker
# yum -y remove docker-engine
Docker常用命令
鏡像相關命令
1、搜索鏡像
可使用docker search命令搜索存放在Docker Hub中的鏡像。執行該命令后,Docker就會在Docker Hub中搜索含有 tomcat 這個關鍵詞的鏡像倉庫。
以上列表包含五列,含義如下:
- NAME:鏡像倉庫名稱。
- DESCRIPTION:鏡像倉庫描述。
- STARS:鏡像倉庫收藏數,表示該鏡像倉庫的受歡迎程度,類似于 GitHub的 stars0
- OFFICAL:表示是否為官方倉庫,該列標記為[0K]的鏡像均由各軟件的官方項目組創建和維護。
- AUTOMATED:表示是否是自動構建的鏡像倉庫。
2、下載鏡像
使用命令docker pull命令即可從Docker Registry上下載鏡像,執行該命令后,Docker會從 Docker Hub中的 tomcat倉庫下載最新版本的 tomcat鏡像。如果要下載指定版本則在tomcat后面加冒號指定版本,例如:docker pull tomcat:7
# docker pull tomcat:7
3、列出鏡像
使用docker images命令即可列出已下載的鏡像
# docker images
以上列表含義如下
- REPOSITORY:鏡像所屬倉庫名稱。
- TAG:鏡像標簽。默認是 latest,表示最新。
- IMAGE ID:鏡像 ID,表示鏡像唯一標識。
- CREATED:鏡像創建時間。
- SIZE: 鏡像大小。
4、刪除本地鏡像
使用docker rmi命令即可刪除指定鏡像
# docker rmi tomcat:7
容器相關命令
1、新建并啟動容器
使用以下docker run命令即可新建并啟動一個容器,該命令是最常用的命令,它有很多選項,下面將列舉一些常用的選項。
-d選項:表示后臺運行
-p選項:指定端口映射,
-- hostPort:containerPort
# docker run -d -p 8080:8080 tomcat:7
這樣就能啟動一個 tomcat 容器。在本例中,為docker run添加了兩個參數,含義如下:
-d 后臺運行
-p 宿主機端口:容器端口
這里是把 容器的8080 端口映射到 虛擬機的8080端口,通過虛擬機自帶的瀏覽器 訪問 127.0.0.1:8080 或者 物理機訪問 虛擬機的ip:8080 (192.168.126.128:8080)也可以訪問,都是一個意思。
訪問http://Docker宿主機 IP:8080/,將會看到tomcat的主界面如下:
需要注意的是,使用docker run命令創建容器時,會先檢查本地是否存在指定鏡像。如果本地不存在該名稱的鏡像, Docker就會自動從Docker Hub下載鏡像并啟動一個 Docker容器。
2、列出容器
用docker ps命令即可列出 正在運行中的容器
# docker ps
如需列出所有容器(包括已停止的容器),可使用-a參數。該列表包含了7列,含義如下
- CONTAINER_ID:表示容器 ID。
- IMAGE:表示鏡像名稱。
- COMMAND:表示啟動容器時運行的命令。
- CREATED:表示容器的創建時間。
- STATUS:表示容器運行的狀態。UP表示運行中, Exited表示已停止。
- PORTS:表示容器對外的端口號。
- NAMES:表示容器名稱。該名稱默認由 Docker自動生成,也可使用 docker run命令的--name選項自行指定。
3、停止容器
使用 docker stop命令,即可停止容器
# docker stop4dbf26d1624d
其中 4dbf26d1624d 是容器 ID,當然也可使用 docker stop容器名稱來停止指定容器
4、啟動已停止的容器
使用docker run命令,即可新建并啟動一個容器。對于已停止的容器,可使用 docker start命令來啟動
# docker start4dbf26d1624d
5、查看容器日志
# docker container logs 4dbf26d1624d
6、進入容器
使用docker exec命令用于進入一個正在運行的docker容器。如果docker run命令運行容器的時候,沒有使用-it參數,就要用這個命令進入容器。一旦進入了容器,就可以在容器的 Shell 執行命令了
# docker exec -it 4dbf26d1624d /bin/bash
退出容器
# exit
7、刪除容器
使用docker rm命令即可刪除指定容器
# docker rm4dbf26d1624d
該命令只能刪除已停止的容器,如需刪除正在運行的容器,可使用-f參數
Docker虛擬化原理
以上就是如何在CentOS 7.5系統中安裝Docker,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。