欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

CentOS 7.5下 安裝Docker 教程 詳解

 更新時間:2019年05月20日 12:00:09   作者:stormlong  
這篇文章主要介紹了CentOS 7.5下 安裝Docker 教程 ,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

Docker簡介

Docker是一個開源的容器引擎,它有助于更快地交付應用。Docker可將應用程序和基礎設施層隔離,并且能將基礎設施當作程序一樣進行管理。

使用Docker可更快地打包、測試以及部署應用程序,并可以縮短從編寫到部署運行代碼的周期。

Docker的優(yōu)點如下:

1、簡化程序

Docker讓開發(fā)者可以打包他們的應用以及依賴包到一個可移植的容器中,然后發(fā)布到任何流行的Linux機器上,便可以實現(xiàn)虛擬化。Docker改變了虛擬化的方式,使開發(fā)者可以直接將自己的成果放入Docker中進行管理。方便快捷已經(jīng)是Docker的最大優(yōu)勢,過去需要用數(shù)天乃至數(shù)周的任務,在Docker容器的處理下,只需要數(shù)秒就能完成。

2、避免選擇恐懼癥

如果你有選擇恐懼癥,還是資深患者。Docker幫你打包你的糾結!比如Docker鏡像;Docker鏡像中包含了運行環(huán)境和配置,所以Docker可以簡化部署多種應用實例工作。比如Web應用、后臺應用、數(shù)據(jù)庫應用、大數(shù)據(jù)應用比如Hadoop集群、消息隊列等等都可以打包成一個鏡像部署。

3、節(jié)省開支

一方面,云計算時代到來,使開發(fā)者不必為了追求效果而配置高額的硬件,Docker改變了高性能必然高價格的思維定勢。Docker與云的結合,讓云空間得到更充分的利用。不僅解決了硬件管理的問題,也改變了虛擬化的方式。

Docker的架構

Docker daemon(Docker守護進程)

Docker daemon是一個運行在宿主機(DOCKER-HOST)的后臺進程??赏ㄟ^ Docker客戶端與之通信。

Client( Docker客戶端)

Docker客戶端是Docker的用戶界面,它可以接受用戶命令和配置標識,并與Docker daemon通信。圖中,docker build等都是Docker的相關命令。

Images(Docker鏡像)

Docker鏡像是一個只讀模板,它包含創(chuàng)建 Docker容器的說明。它和系統(tǒng)安裝光盤有點像,使用系統(tǒng)安裝光盤可以安裝系統(tǒng),同理,使用Docker鏡像可以運行Docker鏡像中的程序。

Container(容器)

容器是鏡像的可運行實例。鏡像和容器的關系有點類似于面向對象中,類和對象的關系??赏ㄟ^Docker API或者CLI命令來啟停、移動、刪除容器。

Registry

Docker Registry是一個集中存儲與分發(fā)鏡像的服務。構建完 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上存放著大量優(yōu)秀的鏡像,我們可使用Docker命令下載并使用。

Docker 的安裝

Docker是一個開源的商業(yè)產(chǎn)品,有兩個版本:社區(qū)版(Community Edition,縮寫為 CE)和企業(yè)版(Enterprise Edition,縮寫為 EE)。企業(yè)版包含了一些收費服務,個人開發(fā)者一般用不到。下面的介紹都針對社區(qū)版。

Docker CE的安裝請參考官方文檔,我們這里以CentOS為例:

1、Docker要求 CentOS 系統(tǒng)的內(nèi)核版本高于3.10

通過uname -r 命令查看你當前的內(nèi)核版本

# uname -r

查看操作系統(tǒng)版本

# 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倉庫,故這里安裝的是穩(wěn)定版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中的鏡像。執(zhí)行該命令后,Docker就會在Docker Hub中搜索含有 tomcat 這個關鍵詞的鏡像倉庫。

以上列表包含五列,含義如下:

- NAME:鏡像倉庫名稱。

- DESCRIPTION:鏡像倉庫描述。

- STARS:鏡像倉庫收藏數(shù),表示該鏡像倉庫的受歡迎程度,類似于 GitHub的 stars0

- OFFICAL:表示是否為官方倉庫,該列標記為[0K]的鏡像均由各軟件的官方項目組創(chuàng)建和維護。

- AUTOMATED:表示是否是自動構建的鏡像倉庫。

2、下載鏡像

使用命令docker pull命令即可從Docker Registry上下載鏡像,執(zhí)行該命令后,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:鏡像創(chuàng)建時間。

- 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添加了兩個參數(shù),含義如下:

-d 后臺運行

-p 宿主機端口:容器端口

這里是把 容器的8080 端口映射到 虛擬機的8080端口,通過虛擬機自帶的瀏覽器 訪問 127.0.0.1:8080 或者 物理機訪問 虛擬機的ip:8080 (192.168.126.128:8080)也可以訪問,都是一個意思。

訪問http://Docker宿主機 IP:8080/,將會看到tomcat的主界面如下:

需要注意的是,使用docker run命令創(chuàng)建容器時,會先檢查本地是否存在指定鏡像。如果本地不存在該名稱的鏡像, Docker就會自動從Docker Hub下載鏡像并啟動一個 Docker容器。

2、列出容器

用docker ps命令即可列出 正在運行中的容器

# docker ps

如需列出所有容器(包括已停止的容器),可使用-a參數(shù)。該列表包含了7列,含義如下

- CONTAINER_ID:表示容器 ID。

- IMAGE:表示鏡像名稱。

- COMMAND:表示啟動容器時運行的命令。

- CREATED:表示容器的創(chuàng)建時間。

- STATUS:表示容器運行的狀態(tài)。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參數(shù),就要用這個命令進入容器。一旦進入了容器,就可以在容器的 Shell 執(zhí)行命令了

# docker exec -it 4dbf26d1624d /bin/bash

退出容器

# exit

7、刪除容器

使用docker rm命令即可刪除指定容器

# docker rm4dbf26d1624d

該命令只能刪除已停止的容器,如需刪除正在運行的容器,可使用-f參數(shù)

Docker虛擬化原理

傳統(tǒng)虛擬化和容器技術結構比較:

傳統(tǒng)虛擬化技術是在硬件層面實現(xiàn)虛擬化,增加了系統(tǒng)調用鏈路的環(huán)節(jié),有性能損耗;

容器虛擬化技術以共享Kernel的方式實現(xiàn),幾乎沒有性能損耗。

相關文章

  • docker搭建jenkins服務的示例

    docker搭建jenkins服務的示例

    這篇文章主要介紹了docker搭建jenkins服務的示例,幫助大家更好的理解和使用docker容器,感興趣的朋友可以了解下
    2020-09-09
  • docker安裝使用xdebug的過程

    docker安裝使用xdebug的過程

    這篇文章主要介紹了docker安裝使用xdebug的過程,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-09-09
  • docker客戶端訪問harbor及安裝配置更新

    docker客戶端訪問harbor及安裝配置更新

    這篇文章主要介紹了docker客戶端訪問harbor以及harbor的安裝配置更新步驟詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-12-12
  • 基于Docker結合Canal實現(xiàn)MySQL實時增量數(shù)據(jù)傳輸功能

    基于Docker結合Canal實現(xiàn)MySQL實時增量數(shù)據(jù)傳輸功能

    這篇文章主要介紹了基于Docker結合Canal實現(xiàn)MySQL實時增量數(shù)據(jù)傳輸功能,本文給圖文并茂給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • docker容器在uos-12038.101上啟動報錯的解決辦法

    docker容器在uos-12038.101上啟動報錯的解決辦法

    這篇文章主要介紹了docker容器在uos-12038.101上啟動報錯的問題,解決方案是需要在/etc/systemd/system/或者 /usr/lib/systemd/system/
    找到docker.service文件,在ExecStart=/usr/bin/dockerd后面添加 --default-ulimit nofile=65536:65536參數(shù),需要的朋友可以參考下
    2024-03-03
  • Docker入門安裝教程(小白篇)

    Docker入門安裝教程(小白篇)

    這篇文章主要介紹了Docker入門安裝教程(小白篇),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-01-01
  • Docker管理之碎片知識整理小結

    Docker管理之碎片知識整理小結

    本文旨在匯總整理Docker日常管理之知識碎片,以便日后回顧查看參考。文中通過示例代碼介紹的非常詳細,感興趣的小伙伴們可以參考一下
    2021-11-11
  • docker中mysql初始化及啟動失敗問題解決方案

    docker中mysql初始化及啟動失敗問題解決方案

    這篇文章主要介紹了docker中mysql初始化及啟動失敗問題解決方案的相關資料,需要的朋友可以參考下
    2016-10-10
  • IDEA集成Docker實現(xiàn)一鍵部署的詳細過程

    IDEA集成Docker實現(xiàn)一鍵部署的詳細過程

    這篇文章主要介紹了IDEA集成Docker實現(xiàn)一鍵部署,Docker基于Windows集成IDEA,本文分步驟通過圖文實例代碼相結合給大家介紹的非常詳細,需要的朋友可以參考下
    2022-08-08
  • 使用Docker容器部署MongoDB并支持遠程訪問及遇到的坑

    使用Docker容器部署MongoDB并支持遠程訪問及遇到的坑

    MongoDB是一個介于關系數(shù)據(jù)庫和非關系數(shù)據(jù)庫之間的產(chǎn)品,是非關系數(shù)據(jù)庫當中功能最豐富,最像關系數(shù)據(jù)庫的,今天通過本文給大家介紹使用Docker容器部署MongoDB并支持遠程訪問及遇到的坑,感興趣的朋友一起看看吧
    2022-07-07

最新評論