使用Dockerfile构建nginx镜像

 雨雀:使用Dockerfile构建nginx镜像 · 语雀 (yuque.com)

 yaml文件用法:02 Docker三剑客之一-Dockerfile · 语雀 (yuque.com)

1.使用Dockerfile构建nginx镜像

[root@localhost ~]# mkdir nginx && cd nginx
[root@localhost nginx]# echo "hello docker" > index.html

2.编写Dockerfile

[root@localhost nginx]# cat Dockerfile 
ARG version=7
FROM centos:${version}
MAINTAINER HWJ
RUN mkdir /hwjvol
VOLUME ["vdata1","hwjvol"]
LABEL version="12" author=hwj description="This is hwj's nginx"
RUN yum install -y wget 
RUN wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
RUN yum install -y nginx
RUN echo "daemon off;" >> /etc/nginx/nginx.conf
ADD index.html /usr/share/nginx/html/index.html
EXPOSE 80 443 
CMD ["/usr/sbin/nginx"]

yaml文件用法:02 Docker三剑客之一-Dockerfile · 语雀 (yuque.com)

3.构建镜像

[root@localhost nginx]# docker build -t hwj_ng:12 -f /root/nginx/Dockerfile .
Sending build context to Docker daemon  4.096kB
Step 1/13 : ARG version=7
Step 2/13 : FROM centos:${version}
 ---> eeb6ee3f44bd
Step 3/13 : MAINTAINER HWJ
 ---> Using cache
 ---> 2496609ee6e4
Step 4/13 : RUN mkdir /hwjvol
 ---> Using cache
 ---> b22884341e05
Step 5/13 : VOLUME ["vdata1","hwjvol"]
 ---> Using cache
 ---> e3f891783a32
Step 6/13 : LABEL version="12" author=hwj description="This is hwj's nginx"
 ---> Using cache
 ---> af80bf31b198
Step 7/13 : RUN yum install -y wget
 ---> Running in f0c28b144d86
Loaded plugins: fastestmirror, ovl
Determining fastest mirrors
 * base: mirrors.aliyun.com
 * extras: mirrors.ustc.edu.cn
 * updates: mirrors.ustc.edu.cn
Resolving Dependencies
--> Running transaction check
---> Package wget.x86_64 0:1.14-18.el7_6.1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package        Arch             Version                   Repository      Size
================================================================================
Installing:
 wget           x86_64           1.14-18.el7_6.1           base           547 k

Transaction Summary
================================================================================
Install  1 Package

Total download size: 547 k
Installed size: 2.0 M
Downloading packages:
warning: /var/cache/yum/x86_64/7/base/packages/wget-1.14-18.el7_6.1.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID f4a80eb5: NOKEY
Public key for wget-1.14-18.el7_6.1.x86_64.rpm is not installed
Retrieving key from file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Importing GPG key 0xF4A80EB5:
 Userid     : "CentOS-7 Key (CentOS 7 Official Signing Key) <security@centos.org>"
 Fingerprint: 6341 ab27 53d7 8a78 a7c2 7bb1 24c6 a8a7 f4a8 0eb5
 Package    : centos-release-7-9.2009.0.el7.centos.x86_64 (@CentOS)
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : wget-1.14-18.el7_6.1.x86_64                                  1/1 
install-info: No such file or directory for /usr/share/info/wget.info.gz
  Verifying  : wget-1.14-18.el7_6.1.x86_64                                  1/1 

Installed:
  wget.x86_64 0:1.14-18.el7_6.1                                                 

Complete!
Removing intermediate container f0c28b144d86
 ---> 5fe03776d9ba
Step 8/13 : RUN wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
 ---> Running in fcca48467ba2
--2022-03-24 03:01:35--  http://mirrors.aliyun.com/repo/epel-7.repo
Resolving mirrors.aliyun.com (mirrors.aliyun.com)... 183.216.185.208, 183.216.185.215, 117.167.122.240, ...
Connecting to mirrors.aliyun.com (mirrors.aliyun.com)|183.216.185.208|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 664 [application/octet-stream]
Saving to: '/etc/yum.repos.d/epel.repo'

     0K                                                       100%  137M=0s

2022-03-24 03:01:36 (137 MB/s) - '/etc/yum.repos.d/epel.repo' saved [664/664]

Removing intermediate container fcca48467ba2
 ---> 3c9ec882ee26
Step 9/13 : RUN yum install -y nginx
 ---> Running in dfaad2d1147b
Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.ustc.edu.cn
 * updates: mirrors.ustc.edu.cn
Resolving Dependencies
--> Running transaction check
---> Package nginx.x86_64 1:1.20.1-9.el7 will be installed
--> Processing Dependency: nginx-filesystem = 1:1.20.1-9.el7 for package: 1:nginx-1.20.1-9.el7.x86_64
--> Processing Dependency: libcrypto.so.1.1(OPENSSL_1_1_0)(64bit) for package: 1:nginx-1.20.1-9.el7.x86_64
--> Processing Dependency: libssl.so.1.1(OPENSSL_1_1_0)(64bit) for package: 1:nginx-1.20.1-9.el7.x86_64
--> Processing Dependency: libssl.so.1.1(OPENSSL_1_1_1)(64bit) for package: 1:nginx-1.20.1-9.el7.x86_64
--> Processing Dependency: nginx-filesystem for package: 1:nginx-1.20.1-9.el7.x86_64
--> Processing Dependency: openssl for package: 1:nginx-1.20.1-9.el7.x86_64
--> Processing Dependency: redhat-indexhtml for package: 1:nginx-1.20.1-9.el7.x86_64
--> Processing Dependency: system-logos for package: 1:nginx-1.20.1-9.el7.x86_64
--> Processing Dependency: libcrypto.so.1.1()(64bit) for package: 1:nginx-1.20.1-9.el7.x86_64
--> Processing Dependency: libprofiler.so.0()(64bit) for package: 1:nginx-1.20.1-9.el7.x86_64
--> Processing Dependency: libssl.so.1.1()(64bit) for package: 1:nginx-1.20.1-9.el7.x86_64
--> Running transaction check
---> Package centos-indexhtml.noarch 0:7-9.el7.centos will be installed
---> Package centos-logos.noarch 0:70.0.6-3.el7.centos will be installed
---> Package gperftools-libs.x86_64 0:2.6.1-1.el7 will be installed
---> Package nginx-filesystem.noarch 1:1.20.1-9.el7 will be installed
---> Package openssl.x86_64 1:1.0.2k-24.el7_9 will be installed
--> Processing Dependency: openssl-libs(x86-64) = 1:1.0.2k-24.el7_9 for package: 1:openssl-1.0.2k-24.el7_9.x86_64
--> Processing Dependency: make for package: 1:openssl-1.0.2k-24.el7_9.x86_64
---> Package openssl11-libs.x86_64 1:1.1.1k-2.el7 will be installed
--> Running transaction check
---> Package make.x86_64 1:3.82-24.el7 will be installed
---> Package openssl-libs.x86_64 1:1.0.2k-19.el7 will be updated
---> Package openssl-libs.x86_64 1:1.0.2k-24.el7_9 will be an update
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package               Arch        Version                   Repository    Size
================================================================================
Installing:
 nginx                 x86_64      1:1.20.1-9.el7            epel         587 k
Installing for dependencies:
 centos-indexhtml      noarch      7-9.el7.centos            base          92 k
 centos-logos          noarch      70.0.6-3.el7.centos       base          21 M
 gperftools-libs       x86_64      2.6.1-1.el7               base         272 k
 make                  x86_64      1:3.82-24.el7             base         421 k
 nginx-filesystem      noarch      1:1.20.1-9.el7            epel          24 k
 openssl               x86_64      1:1.0.2k-24.el7_9         updates      494 k
 openssl11-libs        x86_64      1:1.1.1k-2.el7            epel         1.5 M
Updating for dependencies:
 openssl-libs          x86_64      1:1.0.2k-24.el7_9         updates      1.2 M

Transaction Summary
================================================================================
Install  1 Package  (+7 Dependent packages)
Upgrade             ( 1 Dependent package)

Total download size: 26 M
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
--------------------------------------------------------------------------------
Total                                              632 kB/s |  26 MB  00:41     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : centos-logos-70.0.6-3.el7.centos.noarch                     1/10 
  Installing : centos-indexhtml-7-9.el7.centos.noarch                      2/10 
  Installing : 1:make-3.82-24.el7.x86_64                                   3/10 
  Installing : gperftools-libs-2.6.1-1.el7.x86_64                          4/10 
  Installing : 1:openssl11-libs-1.1.1k-2.el7.x86_64                        5/10 
  Updating   : 1:openssl-libs-1.0.2k-24.el7_9.x86_64                       6/10 
  Installing : 1:openssl-1.0.2k-24.el7_9.x86_64                            7/10 
  Installing : 1:nginx-filesystem-1.20.1-9.el7.noarch                      8/10 
  Installing : 1:nginx-1.20.1-9.el7.x86_64                                 9/10 
  Cleanup    : 1:openssl-libs-1.0.2k-19.el7.x86_64                        10/10 
  Verifying  : 1:nginx-filesystem-1.20.1-9.el7.noarch                      1/10 
  Verifying  : 1:nginx-1.20.1-9.el7.x86_64                                 2/10 
  Verifying  : 1:openssl-libs-1.0.2k-24.el7_9.x86_64                       3/10 
  Verifying  : 1:openssl11-libs-1.1.1k-2.el7.x86_64                        4/10 
  Verifying  : gperftools-libs-2.6.1-1.el7.x86_64                          5/10 
  Verifying  : 1:make-3.82-24.el7.x86_64                                   6/10 
  Verifying  : 1:openssl-1.0.2k-24.el7_9.x86_64                            7/10 
  Verifying  : centos-indexhtml-7-9.el7.centos.noarch                      8/10 
  Verifying  : centos-logos-70.0.6-3.el7.centos.noarch                     9/10 
  Verifying  : 1:openssl-libs-1.0.2k-19.el7.x86_64                        10/10 

Installed:
  nginx.x86_64 1:1.20.1-9.el7                                                   

Dependency Installed:
  centos-indexhtml.noarch 0:7-9.el7.centos                                      
  centos-logos.noarch 0:70.0.6-3.el7.centos                                     
  gperftools-libs.x86_64 0:2.6.1-1.el7                                          
  make.x86_64 1:3.82-24.el7                                                     
  nginx-filesystem.noarch 1:1.20.1-9.el7                                        
  openssl.x86_64 1:1.0.2k-24.el7_9                                              
  openssl11-libs.x86_64 1:1.1.1k-2.el7                                          

Dependency Updated:
  openssl-libs.x86_64 1:1.0.2k-24.el7_9                                         

Complete!
Removing intermediate container dfaad2d1147b
 ---> 3156146d32ad
Step 10/13 : RUN echo "daemon off;" >> /etc/nginx/nginx.conf
 ---> Running in 806bd0eba0a9
Removing intermediate container 806bd0eba0a9
 ---> 538ab0005d67
Step 11/13 : ADD index.html.tar.gz /usr/share/nginx/httml/index.html
 ---> 96e50ee998f1
Step 12/13 : EXPOSE 80 443
 ---> Running in 5e305708d2e6
Removing intermediate container 5e305708d2e6
 ---> 5f40f9fd1057
Step 13/13 : CMD ["/usr/sbin/nginx"]
 ---> Running in ac5bc5c3a67f
Removing intermediate container ac5bc5c3a67f
 ---> 103fc4f15fa0
Successfully built 103fc4f15fa0
Successfully tagged hwj_ng:12

4.运行镜像 

docker run -d -p 8080:80 --name hwj12 103
1c9f69945232fc8bdffbecbd95d7d74fda6dd2bc5091d55192d3b85ce105bcd0
[root@localhost nginx]#  curl localhost:8080
hello docker

 

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我不是生花

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值