
鏡像下載下傳、域名解析、時間同步請點選
阿裡巴巴開源鏡像站一、背景資訊
本教程适用于熟悉Linux作業系統,剛開始使用阿裡雲ECS的開發者。
本教程示例步驟中使用的作業系統版本為
CentOS 7.2 64 3.10.0-514.6.2.el7.x86_64
。
說明: Docker要求64位的系統且核心版本至少為3.10。
二、Docker的部署
本小節主要介紹手動安裝Docker的操作步驟,您也可以在
雲市場購買相應鏡像,一鍵部署雲伺服器。
完成以下操作,部署Docker:
1.添加yum源。
yum install epel-release –y
yum clean all
yum list
2.安裝并運作Docker。
yum install docker-io –y
systemctl start docker
3.檢查安裝結果。
docker info
4.出現以下說明資訊則表明安裝成功。
三、Docker的使用
Docker有以下基本用法:
1.管理Docker守護程序。
systemctl start docker #運作Docker守護程序
systemctl stop docker #停止Docker守護程序
systemctl restart docker #重新開機Docker守護程序
2.管理鏡像。本文使用的是來自阿裡雲倉庫的Apache鏡像。
docker pull registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5
- 修改标簽。由于阿裡雲倉庫鏡像的鏡像名稱很長,可以修改鏡像标簽以便記憶區分。
docker tag registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5:latest aliweb:v1
- 檢視已有鏡像。
docker images
- 強制删除鏡像。
docker rmi –f registry.cn-hangzhou.aliyuncs.com/lxepoo/apache-php5
3.管理容器。
- 進入容器。e1xxxxxxxxxe是執行
指令查詢到的ImageId,使用docker images
指令進入容器。docker run
docker run –it e1xxxxxxxxxe /bin/bash
- 退出容器。使用
指令退出目前容器。exit
-
指令加上run
參數可以在背景運作容器,–d
指定容器命名為apache。--name
docker run -d --name apache e1xxxxxxxxxe
- 進入背景運作的容器。
docker exec -it apache /bin/bash
- 将容器做成鏡像,指令的參數說明:
docker commit <容器ID或容器名> [<倉庫名>[:<标簽>]]
docker commit containerID/containerName repository:tag
- 為了友善測試和恢複,将源鏡像運作起來後,再做一個命名簡單的鏡像做測試。
docker commit 4c8066cd8c01 apachephp:v1
- 運作容器并将主控端的8080端口映射到容器裡去。
docker run -d -p 8080:80 apachephp:v1
四、制作鏡像
1.準備Dockerfile内容。
# vim Dockerfile
FROM apachephp:v1 #聲明基礎鏡像來源
MAINTAINER DTSTACK #聲明鏡像擁有者
RUN mkdir /dtstact #RUN後面接容器運作前需要執行的指令,由于Dockerfile檔案不能超過127行,是以當指令較多時建議寫到腳本中執行
ENTRYPOINT ping www.aliyun.com #開機啟動指令,此處最後一個指令需要是可在前台持續執行的指令,否則容器背景運作時會因為指令執行完而退出。
2.建構鏡像。
docker build -t webcentos:v1 . # . 是Dockerfile檔案的路徑,不能忽略
docker images #檢視是否建立成功
docker run –d webcentos:v1 #背景運作容器
docker ps #檢視目前運作中的容器
docker ps –a #檢視所有容器,包括未運作中的
docker logs CONTAINER ID/IMAGE #如未檢視到剛才運作的容器,則用容器id或者名字檢視啟動日志排錯
docker commit fb2844b6c070 dtstackweb:v1 #commit 後接容器id 和建構新鏡像的名稱和版本号。
docker images #列出本地(已下載下傳的和本地建立的)鏡像
docker push #将鏡像推送至遠端倉庫,預設為 Docker Hub
3.将鏡像推送到registry。其中ImageId和鏡像版本号請您根據自己的鏡像資訊進行填寫。
docker login --username=dtstack_plus registry.cn-shanghai.aliyuncs.com #執行後輸入鏡像倉庫密碼
docker tag [ImageId] registry.cn-shanghai.aliyuncs.com/dtstack123/test:[鏡像版本号]
docker push registry.cn-shanghai.aliyuncs.com/dtstack123/test:[鏡像版本号]
4.在鏡像倉庫能檢視到鏡像版本資訊則說明推送成功。
“ 提供全面,高效和穩定的系統鏡像、應用軟體下載下傳、域名解析和時間同步服務。”