博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
创建支持nginx服务的docker镜像
阅读量:6520 次
发布时间:2019-06-24

本文共 2337 字,大约阅读时间需要 7 分钟。

环境:

1
2
3
4
5
[root@linux-node1 ~]
# cat /etc/redhat-release 
CentOS Linux release 7.2.1511 (Core) 
[root@linux-node1 ~]
# uname -a
Linux linux-node1 3.10.0-327.el7.x86_64 
#1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux
[root@linux-node1 ~]
#

创建目录并下载对应的软件包:

1
2
3
4
5
6
7
[root@linux-node1 ~]
#mkdir -p nginx_centos
[root@linux-node1 ~]
#
[root@linux-node1 nginx_centos]
# ll
total 2864
-rw-r--r-- 1 root root  864430 Aug  6 21:12 nginx-1.9.3.
tar
.gz
-rw-r--r-- 1 root root 2058349 Aug  6 21:39 pcre-8.37.
tar
.gz
[root@linux-node1 nginx_centos]
#

编写Dockerfile文件:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
[root@linux-node1 nginx_centos]
# vim Dockerfile 
#Version 1.0
#Author: Wilson
#Base images
FROM centos
#MAINTAINER
MAINTAINER Wilson
#ADD
ADD pcre-8.37.
tar
.gz 
/usr/local/src
ADD nginx-1.9.3.
tar
.gz 
/usr/local/src
#RUN
RUN   yum -y 
install 
wget gcc gcc-c++ 
make 
openssl openssl-devel
RUN   
useradd 
-s 
/sbin/nologin 
-M www
#WORKDIR
WORKDIR   
/usr/local/src/nginx-1
.9.3
RUN      .
/configure 
--prefix=
/usr/local/nginx 
--user=www --group=www --with-http_ssl_module --with-http_stub_status_module --with-pcre=
/usr/local/src/pcre-8
.37 && 
make 
&& 
make 
install 
RUN      
echo 
"daemon off;" 
>>
/usr/local/nginx/conf/nginx
.conf
ENV     PATH 
/usr/local/nginx/sbin
:$PATH
EXPOSE 80
CMD [
"nginx"
]
[root@linux-node1 nginx_centos]
#

创建镜像并查看:

1
2
3
4
5
6
7
8
9
[root@linux-node1 nginx_centos]
# docker build -t ningx-file:v01 ./
[root@linux-node1 nginx_centos]
#
[root@linux-node1 nginx_centos]
# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
ningx-
file          
v01                 460b5af495c4        16 minutes ago      531.9 MB
nginx
/ningx         
1.9.3v02            097c98e3cb2b        About an hour ago   534.6 MB
nginx               1.9.3               d2cfb9ed3f2b        6 hours ago         534.6 MB
docker.io
/centos    
latest              970633036444        8 days ago          196.7 MB
[root@linux-node1 nginx_centos]
#

利用创建的镜像启动一个容器webserver002

1
2
3
4
5
[root@linux-node1 nginx_centos]
#docker run -d -p 9000:80 --name webserver002 460b5af495c4
[root@linux-node1 nginx_centos]
#
[root@linux-node1 nginx_centos]
# docker ps -a|grep webserver002
5ab1e96830c1        460b5af495c4        
"nginx"                  
9 minutes ago       Up 9 minutes        0.0.0.0:9000->80
/tcp   
webserver002
[root@linux-node1 nginx_centos]

说明:-p将宿主机本地端口与容器内部端口进行指定映射,这里是宿主机本地9000端口与容器内部80端口映射

验证是否能通过9000端口访问:截图如下:

至此,支持nginx的服务的docker镜像创建完成

      本文转自027ryan  51CTO博客,原文链接:http://blog.51cto.com/ucode/1835312
,如需转载请自行联系原作者
你可能感兴趣的文章