實驗環境:
cent os 7 服務器一台,訪問客戶機一台
實驗步驟:
安裝在線yum源
mkdir /root/dockerRPM
yum install --downloadonly --downloaddir=/root/dockerRPM docker* //下載yum源
生成yum列表
createrepo 下載路徑(/root/dockerRPM),
安裝docker軟件包
yum -y install docker
查看centos系統的發行版
cat /etc/centos-release
注意:如果使用的是官方版的鏡像,為避免下載速度太慢,可以修改yum源,改為163yun后者aliyun都可以,加快yum的安裝速度。
創建一個yum源,然后使用本地yum來具體安裝docket的包
vim /etc/yum.repod/yun.repo
[yum]
name=yum
baseurl=file:///root/dockerRPM
enabled=1
gpgcheck=0
清除yum緩存
yum clear all
安裝docker軟件包
yum -y install docker
設置docker主目錄
LVM /var/lib/docker
收集和nginx有關的東西,將其放在docker的容器中,制作成鏡像,必須先啟動docker容器。
systemctl restart docker
docker search nginx
注意:有OK的為官方的東西,前面數字高的是下載熱度高的docker.io/nginx
下載的docker集裝箱所收集的一切關於nginx的東西。
docker pull docker.io/nginx
如果系統鏡像是官網版的centos7,則yum源是海外的,所以需要用國內的yum源。則進行以下的操作:
1.dev.aliyun.com
阿里的docker鏡像地址
2.登陸到阿里雲的網站平台,需要使用淘寶賬號
cr.console.aliyun.com
找到鏡像加速欄,找到屬於自己的鏡像加速地址
注意:可以使用上述網址登陸阿里雲網站,然后使用淘寶賬號登陸,復制鏡像加速地址,提高鏡像的下載速度。
3.在docker主機下的/etc/ docker/daemon.json
在{}中加入
"registry-mirrors": ["https://93j1org2.mirror.aliyuncs.com"]
啟動docker服務
systemctl restart docker
查看已有的鏡像
docker images
后台運行容器
docker run -itd docker.io/nginx
-d 后台運行
-t 打開容器終端
-i 交互式
修改容器名稱並運行容器
docker run -itd --name nginx1 docker.io/nginx
--name 容器名稱 //修改容器的名稱
查看所有已開啟的容器
docker ps
查看所有的容器
docker ps -a
開啟/關閉容器
docker start fd6 容器的id/容器的名稱
docker stop fd6
登陸到容器,並打開shell環境
docker exec -ti nginx-1(容器ID/名稱) /bin/bash
安裝一個app的容器和一系統鏡像的區別:
這個nginx的容器,精簡了很多東西,有很多命令都不能用,只是想讓nginx起來,就是裝了一個app
如果安裝的是一個鏡像,在裝app,則里面所以的命令都有,就像直接安裝了一個系統
注意:容器多的時候用名字並ID好用,所以在容器多的時候盡量用名稱,並且改成自己熟悉的名稱就好。
給這個容器添加端口,讓這個服務起來,app都這么做,本身沒有IP地址,所以會映射一個端口,然后做服務。
docker run -ith -p 80 : 80 鏡像名/ID
參數解釋:
-p 指定端口
80:80 本機端口:容器端口
查看集裝箱名稱
docker images
容器用完就可以刪除,是個只讀的,刪除就是關閉一個進程。
刪除容器
Docker rm -f nginx-1
查詢各個容器的id
docker ps -aq
刪除所有容器
docker ps -aq | xargs docker rm -f
給docker鏡像里nginx服務添加首頁標記,需要進入docker鏡像里。
docker exec -ti nginx-1(容器ID/名稱) /bin/bash
echo "<h1>test</h1>" > /usr/share/nginx/html/index.html
驗證:通過訪問主機的IP地址,來缺點docker容器的nginx是可以正常使用的。
