用docker容器來制作nginx鏡像


實驗環境:

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是可以正常使用的。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM