5,docker基础之---Dockerfile构建Nginx
2023-05-09 06:04:45 阅读次数:268
docker,Dockerfile,Nginx
上传安装包到test目录下:
[root@docker ~]# mkdir test
[root@docker ~]# cd test/
[root@docker test]# ll
总用量 1012
-rw-r--r-- 1 root root 1032345 2月 5 14:32 nginx-1.16.0.tar.gz
[root@docker test]#
进行解压:
[root@docker test]# tar -xf nginx-1.16.0.tar.gz
[root@docker test]# ll
总用量 1012
drwxr-xr-x 8 1001 1001 158 4月 23 2019 nginx-1.16.0
-rw-r--r-- 1 root root 1032345 2月 5 14:32 nginx-1.16.0.tar.gz
[root@docker test]#
本机部署Nginx
1,下载依赖包
[root@docker test]# yum install gcc gcc-c++ make pcre-devel zlib zlib-devel -y
2,进入解压后的nginx目录
[root@docker test]# cd nginx-1.16.0
3,源码编译指定路径
[root@docker nginx-1.16.0]#./configure --prefix=/usr/local/nginx && make && make install
4,删除解压文件
[root@docker test]# rm -rf nginx-1.16.0
5,执行启动
[root@docker test]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
6,或者前台启动
[root@docker test]# /usr/local/nginx/sbin/nginx -g "daemon off;"
dockerfile部署Nginx
shell脚本详解:
#!/bin/bash 指明解释器
yum install gcc gcc-c++ make pcre-devel zlib zlib-devel -y
cd /home/nginx-1.16.0
./configure --prefix=/usr/local/nginx && make && make install
编译安装 指明安装路径
shell脚本:
#!/bin/bash
yum install gcc gcc-c++ make pcre-devel zlib zlib-devel -y
cd /usr/local/nginx-1.16.0
./configure --prefix=/usr/local/nginx && make && make install
dockerfile脚本:
FROM centos:7
ADD nginx-1.16.0.tar.gz /usr/local
COPY nginx_install.sh /usr/local
RUN sh /usr/local/nginx_install.sh
EXPOSE 80
在test目录下创建dockerfile文档和shell脚本文档:
[root@docker test]# touch nginx_install.sh
[root@docker test]# touch dockerfile
[root@docker test]# ll
总用量 1020
-rw-r--r-- 1 root root 127 2月 5 14:59 dockerfile
drwxr-xr-x 8 1001 1001 158 4月 23 2019 nginx-1.16.0
-rw-r--r-- 1 root root 1032345 2月 5 14:56 nginx-1.16.0.tar.gz
-rw-r--r-- 1 root root 181 2月 5 14:59 nginx_install.sh
[root@docker test]#
输入脚本内容进文档:
[root@docker test]# cat nginx_install.sh
#!/bin/bash
yum install gcc gcc-c++ make pcre-devel zlib zlib-devel -y
cd /usr/local/nginx-1.16.0
./configure --prefix=/usr/local/nginx && make && make install
[root@docker test]# cat dockerfile
FROM centos:7
ADD nginx-1.16.0.tar.gz /usr/local
COPY nginx_install.sh /usr/local
RUN sh /usr/local/nginx_install.sh
EXPOSE 80
[root@docker test]#
执行daokefile:
[root@docker test]# docker build -t mycentos:nginx .
[root@docker test]# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
mycentos nginx defd97631c57 About a minute ago 506MB
centos 7 eeb6ee3f44bd 16 months ago 204MB
[root@docker test]#
运行nginx以前台方式运行:
[root@docker test]# docker run -itd -p 80:80 mycentos:nginx /usr/local/nginx/sbin/nginx -g "daemon off;"
版权声明:本文内容来自第三方投稿或授权转载,原文地址:https://blog.51cto.com/lyx888/6099005,作者:冷影玺,版权归原作者所有。本网站转在其作品的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如因作品内容、版权等问题需要同本网站联系,请发邮件至ctyunbbs@chinatelecom.cn沟通。
上一篇:8,docker基础之---桥接主机模式与特权指令
下一篇:Linux 下使用 killall 命令终止进程