天天看點

ECS訓練營DAY2——基于ECS搭建Docker環境ECS訓練營DAY2——基于ECS搭建Docker環境

ECS訓練營DAY2——基于ECS搭建Docker環境

2020.09.24

背景知識

容器技術

容器是一個允許我們在資源隔離的過程中,運作應用程式和其依賴項的 、輕量的 、作業系統級别的虛拟化技術, 運作應用程式所需的所有必要元件都打包為單個鏡像,這個鏡像是可以重複使用的。當鏡像運作時,它是運作在獨立的環境中,并不會和其他的應用共享主機作業系統的記憶體、CPU或磁盤。這保證了容器内的程序不會影響到容器外的任何程序。

Docker

Docker是一個開源的應用容器引擎,讓開發者可以打包他們的應用以及依賴包到一個可移植的容器中,然後釋出到任何流行的Linux機器或Windows機器上,也可以實作虛拟化,容器是完全使用沙箱機制,互相之間不會有任何接口。Docker底層用的Linux的cgroup和namespace這兩項技術來實作應用隔離,一個完整的Docker有以下幾個部分組成:

  • Docker Client用戶端
  • Docker Daemon守護程序
  • Docker Image鏡像
  • Docker Container容器

開始/安裝

連接配接ECS伺服器安裝Docker CE

ECS訓練營DAY2——基于ECS搭建Docker環境ECS訓練營DAY2——基于ECS搭建Docker環境

安裝Docker的依賴庫

yum install -y yum-utils device-mapper-persistent-data lvm2           
ECS訓練營DAY2——基于ECS搭建Docker環境ECS訓練營DAY2——基于ECS搭建Docker環境

添加Docker CE的軟體源資訊(添加為阿裡的源)

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo           
ECS訓練營DAY2——基于ECS搭建Docker環境ECS訓練營DAY2——基于ECS搭建Docker環境

安裝Docker CE

yum makecache fast
yum -y install docker-ce           

啟動Docker服務

systemctl start docker           

配置阿裡雲鏡像倉庫

控制台->容器鏡像服務->鏡像中心->鏡像加速器

vim /etc/docker/daemon.json           

在daemon.json中添加

{
  "registry-mirrors": ["<鏡像加速器提供的專屬加速位址>"]
}           

重新加載服務配置檔案

systemctl daemon-reload           

重新開機Docker服務

systemctl restart docker           

使用Docker安裝Nginx服務

先檢視Docker鏡像倉庫中Nginx的可用版本

docker search nginx           
ECS訓練營DAY2——基于ECS搭建Docker環境ECS訓練營DAY2——基于ECS搭建Docker環境

選擇最新版進行安裝

docker pull nginx:latest           

檢視本地鏡像

docker images           

可以看到已經安裝了Nginx最新版

ECS訓練營DAY2——基于ECS搭建Docker環境ECS訓練營DAY2——基于ECS搭建Docker環境

運作容器

docker run --name my-nginx-test -p 8080:80 -d nginx           

參數說明

  • -name my-nginx-test 容器名稱
  • -p 8080:80 端口進行映射,将本地8080端口映射到容器内部的80端口
  • -d nginx 設定容器在背景一直運作

結果測試

使用Chrome通路‘

http://公網ip位址>:8080’即可看到Nginx服務
ECS訓練營DAY2——基于ECS搭建Docker環境ECS訓練營DAY2——基于ECS搭建Docker環境