雲計算

阿里雲ECS服務器安裝docker教程(詳細圖文)

一、為什麼要使用Docker?

理由很簡單,用了的人都說好用。在多系統的分佈式項目中,往往傳統的部署發包等操作,那是讓每個上線的程序員恨的牙癢呀。通常都是通宵奮戰,上生產解決各種部署發包問題。

個人簡單總結一下三點:

1.部署簡單且靈活,有獨立的運行環境,避免了不必要的衝突。

2.節省了資源開銷

3.類似於java, 打包一次各處部署運行。項目遷移靈活便捷。

二、什麼是docker呢?

在講之前,先來說說什麼時容器?什麼時虛擬機?

看下圖:

image

簡單解釋一下,圖左為容器,圖右為虛擬機。

Docker 屬於 Linux 容器的一種封裝,提供簡單易用的容器使用接口。它是目前最流行的 Linux 容器解決方案。

兩圖比較,我們可以看到在容器中是由docker分配給項目獨立的虛擬資源,項目運行是與底層系統隔離開來的。但虛擬機中可以看到項目運行是直接分配資源與底層系統交互。顯然,如果App2不工作了,對於容器來說系統資源會運用在App1和3上。而對於VM,由於資源已經分配出去,所以就會出現利用率不高情況。

區別:

特性 容器 虛擬機
啟動 秒級 分鐘級
硬盤使用 一般為MB 一般為GB
性能 接近原生 弱於
系統支持量 單機支持上千個容器 一般是幾十個

docker架構圖:

image

解釋:

Client:

docker client: 客戶端提供操作指令給用戶,用以連接服務端操作docker。

docker Machine:是一個簡化Docker安裝的命令行工具,通過一個簡單的命令行即可在相應的平臺上安裝Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。

Hosts:

container:一個獨立運行的容器,每個容器之間沒半毛錢關係,也不影響對方。

registers:

image:是一個鏡像文件,host主機從遠程倉庫拉去image鏡像後,可以創建container容器,然後執行運行容器。

簡單來講,docker先安裝到本機後,通過docker客戶端操作指令,拉去遠程docker倉庫中已經打包好的項目鏡像文件到本地。然後通過指令操作鏡像創建容器,最後啟動容器完成部署。

詳細關於鏡像的問題可以參考_:_Docker _鏡像_基本操作 - 容器_鏡像_服務

三、安裝docker

說了這麼多,不如安裝後實際操作一把,就什麼都知道啦~

安裝環境:

centos7

安裝命令:

yum install docker

設置開機自動啟動:

service docker start

查看版本:

docker version

image

修改docker倉庫地址:

命令:

vi /etc/docker/daemon.json

內容:

{ “registry-mirrors”: “https://registry.docker-cn.com”, “live-restore”: true }

四、簡單的實踐-部署ActiveMq

1.拉取mq鏡像

命令:docker pull rabbitmq:management

2.運行啟動

命令:docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management

3.訪問管理界面的地址

就是 http://[宿主機IP]:15672,可以使用默認的賬戶登錄,用戶名和密碼都guest

五、Docker操作命令

$ docker ps // 查看所有正在運行容器

$ docker stop containerId // containerId 是容器的ID

$ docker ps -a // 查看所有容器

$ docker ps -a -q // 查看所有容器ID

$ docker stop (docker ps -a -q) // stop停止所有容器 docker rm $(docker ps -a -q) // remove刪除所有容器

雲服務器ECS地址:阿里雲·雲小站

Leave a Reply

Your email address will not be published. Required fields are marked *