1. 程式人生 > >Docker-容器服務 Container Service04(構建鏡像+倉庫配置)

Docker-容器服務 Container Service04(構建鏡像+倉庫配置)

src bin ffffff 沒有 robot rom 過程 註釋 con

Docker-構建鏡像-倉庫配置 04

技術分享圖片

一、Docker 鏡像介紹

Docker鏡像構建分為兩種:
1) 手動構建
2) Dockerfile(自動構建)

二、手動構建過程

基於 centos 鏡像進行構建,制作 nginx鏡像

1)創建鏡像,並安裝nginx

[root@localhost opt]# docker run --name qiuyuetao -it centos
#  在centos上裝個nginx
#  阿裏雲找到epel源
[root@0fa09f7a0afe /]# rpm -ivh https://mirrors.aliyun.com/epel/epel-release-latest-7.noarch.rpm
[root@0fa09f7a0afe /]# yum install nginx -y       #安裝nginx

技術分享圖片

2)修改nginx配置文件,讓它運行在前臺

[root@0fa09f7a0afe /]# head /etc/nginx/nginx.conf
daemon off;  ## 取消後臺運行,在user 上面添加這一行
user nginx;
#修改完之後 exit 退出

3) 查詢Container ID

[root@localhost opt]# docker ps -a  #找到剛才創建容器的CONTAINER ID 
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                     PORTS                      NAMES
0fa09f7a0afe        centos              "/bin/bash"              20 minutes ago      Up 4 minutes                                          qiuyuetao

4)將現有容器保存為鏡像,命名為qiuyuetao/qiuyuetao

[root@localhost opt]# docker commit -m "Mynginx" 0fa09f7a0afe qiuyuetao/qiuyuetao:v1

[root@localhost opt]# docker images   #查看鏡像是否生成
REPOSITORY            TAG                 IMAGE ID            CREATED             SIZE
qiuyuetao/qiuyuetao   v1                  14ea0f79983d        24 seconds ago      406 MB
#註釋
#-m 描述
#容器ID
第一個qiuyuetaor是倉庫的名稱
第二個qiuyuetao是鏡像的名稱
#v1 標簽,如果是最後一個版本我們可以打latest

5) 使用剛制作好的nginx鏡像

[root@localhost opt]# docker run -d -p 82:80  qiuyuetao/qiuyuetao:v1 nginx
3f78858078c2aa4805dbf255a654cd2c136d3ee6f814527ebb7eb93d4edfb657
##   -d 後臺運行
##   -p 指定端口
##   qiuyuetao/qiuyuetao:v1 版本庫及版本號
##  nginx 執行的命令,例如/bin/bash ,如果nginx沒有環境變量,需要數據全路徑

6)nginx展示頁

[root@localhost opt]# docker ps 
CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS              PORTS                NAMES
3f78858078c2        qiuyuetao/qiuyuetao:v1   "nginx"                  4 minutes ago       Up 4 minutes        0.0.0.0:82->80/tcp   wizardly_lumiere

技術分享圖片

7)日誌查詢

[root@localhost opt]# docker exec -it  3f78858078c2 tail /var/log/nginx/access.log
192.168.56.1 - - [16/Aug/2018:17:27:25 +0000] "GET / HTTP/1.1" 200 3700 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" "-"
192.168.56.1 - - [16/Aug/2018:17:27:25 +0000] "GET /robots.txt HTTP/1.1" 404 3650 "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" "-"
192.168.56.1 - - [16/Aug/2018:17:27:25 +0000] "GET /nginx-logo.png HTTP/1.1" 200 368 "http://192.168.56.11:82/" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" "-"
192.168.56.1 - - [16/Aug/2018:17:27:25 +0000] "GET /poweredby.png HTTP/1.1" 200 2811 "http://192.168.56.11:82/" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" "-"
192.168.56.1 - - [16/Aug/2018:17:27:26 +0000] "GET /favicon.ico HTTP/1.1" 404 3650 "http://192.168.56.11:82/" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/68.0.3440.106 Safari/537.36" "-"

8)手動構建總結:

技術分享圖片

Docker-容器服務 Container Service04(構建鏡像+倉庫配置)