1. 程式人生 > >linux-CentOS7 下的 Docker最新入門教程 超級詳細 (安裝以及簡單的使用)

linux-CentOS7 下的 Docker最新入門教程 超級詳細 (安裝以及簡單的使用)

1、為什麼使用Docker(本人)

最近總是頻繁的在新伺服器釋出專案, 每次釋出都需要佈置專案所需要的環境特別麻煩,而且還有一臺機器需要兩個環境的狀況

例如:釋出java web 專案而言 需要下載安裝jdk 和tomcat 安裝Docker後只需要幾個命令就輕鬆搞定,還有兩個環境的問題,我們有一臺伺服器需要釋出兩個java web專案 而有一個專案必須使用jdk1.7 而另一個必須用jdk1.8,這個使用Docker都可以輕鬆解決

2、Docker介紹

Docker裡面有三個概念分別是:

映象,倉庫,容器

經過簡單的安裝我對這三個概念的理解大致如下:

以下為本人個人觀點僅供參考!

容器:就說執行java web專案,首先需要有執行環境,而這個容器就是我們的執行環境

映象:我把映象理解為我們的作業系統,這個作業系統(映象)執行起來後才會有我們程式執行的環境(容器)

倉庫:這個倉庫也就是我們下載作業系統(映象)的地方,裡面有各式各樣的作業系統(映象),redis,tomcat的映象等等

接下來進行Docker的安裝和簡單的使用來體驗一下使用Docker是不是很方便

3、Docker安裝與啟動

因為第一次使用Docker也不清楚哪個版本比較好,所以按照官網的提示安裝了最新版本(以下內容來自官網,本人親測安裝成功)

1)Docker安裝所需要CentOS7以上才可以安裝

2)  安裝所需的軟體包

$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2

3)  設定 stable 映象倉庫:

$ sudo yum-config-manager \
     --add-repo \
     https://download.docker.com/linux/centos/docker-ce.repo

4)  啟用 edge 和 testing 映象倉庫:

$ sudo yum-config-manager --enable docker-ce-edge
$ sudo yum-config-manager --enable docker-ce-testing

5)  更新yum軟體包索引:

$ sudo yum makecache fast

6)  安裝Docker最新版本:

$ sudo yum install docker-ce

7)啟動Docker:

$ sudo systemctl start docker

8)驗證是否啟動成功:

$ sudo docker run hello-world

 4、Docker常用命令以及使用圖解

1、拉取映象

docker pull 映象地址

阿里docker映象地址:

以拉取tomcat映象為例,點選搜尋

這個也就是帶有tomcat環境的作業系統,這個是完整的命令直接複製就行

docker pull registry.cn-hangzhou.aliyuncs.com/shuodao/tomcat-8.5.27

因為tomcat需要java環境所以下載會有一點慢

等待下載完成...

2、檢視所有映象

docker images

上圖可以看到兩個映象,第一個是我們測試Docker是否成功安裝的  第二個使我們下載好的tomcat映象

3、執行映象

docker run -d -p 本機埠:容器埠 映象名稱

-d:映象在後臺執行

-p指定本機與容器內部互動的埠 -P是隨機開放一個埠與容器內部ID對映(這裡不做演示)

執行tomcat映象,我們把本機的80埠對映到容器的8080埠

docker run -d -p 80:8080 registry.cn-hangzhou.aliyuncs.com/shuodao/tomcat-8.5.27

我們訪問一下看tomcat是否成功啟動

tomcat主頁已經顯示證明服務正常啟動了

4、檢視正在執行的容器

docker ps 

5、進入到容器內部

docker exec -it 容器ID bash   (下面是我的容器ID 每個容器ID是不一樣的 使用docker ps 檢視一下)

docker exec -it a1a4eaba7dd4 bash

退出容器:輸入exit

6、檔案傳輸

如果我們想獲取容器內tomcat的日誌檔案怎麼辦呢

容器 -----> 本機

docker cp ID全稱:容器檔案路徑 本地路徑

docker cp a1a4eaba7dd44db8a23701c2f7825a506381c7c889bb0702dd747ad521a809d0:/usr/tomcat/logs/catalina.out /usr/local/Docker/catalina.out

本機 -----> 容器 (這個就不演示了都差不多)

docker cp 本地檔案路徑 ID全稱:容器路徑

7、停止容器

docker stop 容器ID

docker stop a1a4eaba7dd4

我們再訪問一下:

下面兩個命令一會兒會說到:

8、刪除容器

docker rm 容器id

9、刪除映象

docker rmi 映象id

5、構建映象併發布自己的專案

1、在/usr/local下建立Docker資料夾(隨便的一個空的資料夾)

2、上傳war包到這個資料夾

3、建立Dockerfile檔案

touch Dockerfile

3、編輯Dockerfile

vi Dockerfile

4、寫入以下內容

#該映象的父映象 為 tomcat 映象 這樣我們就有了tomcat的環境
from registry.cn-hangzhou.aliyuncs.com/shuodao/tomcat-8.5.27

#複製當前資料夾下的 war包 到映象中tomcat的webapps目錄
COPY TestDocker.war /usr/tomcat/webapps

#去除容器內部中文亂碼問題
ENV LANG C.UTF-8

5、構建映象(還是在Docker資料夾 也就是Dockerfile所在資料夾)

docker build -t 映象名稱(映象名稱必須為小寫):映象版本 .

注意後面的點要加上,這個代表Dockerfile的所在目錄

docker build -t docker-test:latest .

使用docker images 檢視一下我們構建的映象

執行映象

docker run -d -p 80:8080 docker-test

像本文剛開始提到的,每個專案都需要有自己的執行環境,我們可以為每個專案都配置一個屬於自己的映象

6、刪除映象和容器

當我們有廢棄的映象和容器時,不使用需要刪除

我們需要注意的一點是:

映象啟動後會產生容器,如果不先刪除容器,映象是無法刪除的

例如:

我們停掉剛才的容器,刪除我們的映象

正確的步驟:

首先我們需要先刪除容器:

檢視所有狀態的容器(包括已經被停止調的容器)

docker ps -a

先刪除容器:

docker rm 87c728718a7b

再檢視一下發現容器已被刪除:

接下來刪除映象:

docker rmi  48dc9dfde4d8

本次入門教程到這就結束了,有寫的不好的地方希望大家可以指出來