首页 > 系统相关 >5-Docker实例-nginx application

5-Docker实例-nginx application

时间:2024-02-04 16:32:01浏览次数:29  
标签:centos application -- 0.0 nginx Docker local docker

1.编写Dockerfile文件,添加如下内容并保存

命令:

vim Dockerfile

[root@centos79 ~]# cat Dockerfile
FROM centos:centos7 

MAINTAINER ztj

ENV PATH /usr/local/nginx/sbin:$PATH

ADD nginx-1.8.0.tar.gz /usr/local/
ADD epel-release-latest-7.noarch.rpm /usr/local/

RUN rpm -ivh /usr/local/epel-release-latest-7.noarch.rpm
RUN yum install -y vim net-tools wget lftp gcc gcc-c++ make openssl-devel pcre-devel pcre && yum clean all
RUN useradd -s /sbin/nologin -M www

WORKDIR /usr/local/nginx-1.8.0

RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-pcre && make && make install
RUN echo "daemon off;" >>/etc/nginx.conf

EXPOSE 80

ENTRYPOINT ["nginx"]
CMD ["-g","daemon off;"]
[root@centos79 ~]#

2.构建镜像及查看

命令:

docker build -t centos-nginx:1.0 -f /root/Dockerfile .

[root@centos79 ~]# docker build -t centos-nginx:1.0 -f /root/Dockerfile .
[+] Building 56.8s (8/13)                                                                                      
 => [internal] load build definition from Dockerfile                                                           
 => => transferring dockerfile: 656B                                                                           
 => [internal] load .dockerignore                                                                              
 => => transferring context: 2B                                                                                
[+] Building 57.0s (8/13)                                                                      docker:default  
 => [1/9] FROM docker.io/library/centos:centos7                                                          0.0s  
 => [internal] load build context                                                                        0.0s  
 => => transferring context: 93B                                                                         0.0s  
 => [2/9] ADD nginx-1.8.0.tar.gz /usr/local/                                                             0.2s  
[+] Building 232.7s (14/14) FINISHED                                                           docker:default  
 => [internal] load build definition from Dockerfile                                                     0.0s  
 => => transferring dockerfile: 656B                                                                     0.0sea
 => [internal] load .dockerignore                                                                        0.0s  
 => => transferring context: 2B                                                                          0.0s  
 => [internal] load metadata for docker.io/library/centos:centos7                                        0.0s  
 => [1/9] FROM docker.io/library/centos:centos7                                                          0.0s  
 => [internal] load build context                                                                        0.0s  
 => => transferring context: 93B                                                                         0.0s  
 => [2/9] ADD nginx-1.8.0.tar.gz /usr/local/                                                             0.2s 
 => [3/9] ADD epel-release-latest-7.noarch.rpm /usr/local/                                               0.0s 
 => [4/9] RUN rpm -ivh /usr/local/epel-release-latest-7.noarch.rpm                                       1.1s 
 => [5/9] RUN yum install -y vim net-tools wget lftp gcc gcc-c++ make openssl-devel pcre-devel pcre &  211.4s 
 => [6/9] RUN useradd -s /sbin/nologin -M www                                                            0.3s 
 => [7/9] WORKDIR /usr/local/nginx-1.8.0                                                                 0.0s 
 => [8/9] RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --wi  18.4s 
 => [9/9] RUN echo "daemon off;" >>/etc/nginx.conf                                                       0.3s 
 => exporting to image                                                                                   0.9s 
 => => exporting layers                                                                                  0.9s 
 => => writing image sha256:69ec253478f5af7b26d691906a337d48758819bc8b10293a96a3e688d69ae04e             0.0s 
 => => naming to docker.io/library/centos-nginx:1.0                                                      0.0s 
[root@centos79 ~]#

3.查看镜像

命令:

docker images | grep centos-nginx

[root@centos79 ~]# docker images | grep centos-nginx
centos-nginx                 1.0           69ec253478f5   About a minute ago   448MB
[root@centos79 ~]#

4.运行镜像

命令:

docker run -itd -p 80:80 --name centos-nginx centos-nginx:1.0

[root@centos79 ~]# docker run -itd -p 80:80 --name centos-nginx centos-nginx:1.0
f5e0a3d00d0e4f43809b9734e8b501521482d43141f772899f412dc6b43a3bda
[root@centos79 ~]# docker ps -a | grep centos-nginx
f5e0a3d00d0e   centos-nginx:1.0       "nginx -g 'daemon of…"   48 seconds ago   Up 47 seconds   0.0.0.0:80->80/tcp, :::80->80/tcp                                                      centos-nginx
[root@centos79 ~]# netstat -antulp | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      13186/docker-proxy  
......
tcp6       0      0 :::80                   :::*                    LISTEN      13192/docker-proxy  
[root@centos79 ~]#

5.验证

http://172.20.10.12

5-Docker实例-nginx application_centos

标签:centos,application,--,0.0,nginx,Docker,local,docker
From: https://blog.51cto.com/ztj1216/9587284

相关文章

  • Docker
    容器化在现在使用非常普遍,对于个人环境搭建和使用是非常方便的,而且对于生产上的部署也日益完善,相信在使用过程中所遇到的问题,能都够在网上获得相应的答案。本人虽然也学习并使用了很长的时间,但是却从未进行完整的整理,没有进行对自己Docker的相关知识的总结和梳理,本篇文章是本人结......
  • Nginx中查看请求的耗时
    要在Nginx中查看请求的耗时,可以使用ngx_http_log_module模块来记录日志。首先,需要确保已经安装了Nginx并且配置文件正常运行。然后按照下面的步骤进行操作:打开Nginx的配置文件(通常位于/etc/nginx/nginx.conf);在http部分添加或修改如下指令:http{...log_formattimed......
  • Docker启动的容器设置开机自启动
    参考:https://www.cnblogs.com/hengdin/articles/17838930.htmldocker容器如果需要在开机实现自启动可以在启动的时候加以下参数--restart=always例如启动一个MySQL容器需要开机自启则使用以下命令启动容器#dockerrun-d--namemysql-p3306:3306--restart=alwaysalwa......
  • 【Docker】使用Docker部署MySQL
    ✨Docker本文介绍DockerDesktop以及docker命令行的简单使用DockerDesktop安装使用请查阅官方文档GetDocker|DockerDocumentation在Windows上安装DockersDesktop可参考【Docker】DockerDesktopforWindows(WSL2)安装-双份浓缩馥芮白-博客园(cnblogs.com)似乎......
  • nginx实现一个对外端口同时支持http和https协议访问
    前言最近有一个需求,需要让一个非80端口的http服务支持https访问;但是业务牵扯太多没法将http直接改为https,因此需要一个端口同时支持http和https方案一.使用nginx的stream、stream_ssl_preread模块参考资料Modulengx_stream_ssl_preread_moduleModulengx_stream_core_......
  • Docker安装mysql8
    1.下载mysql8镜像(版本根据自己选择:这里是8.0.20)dockerpullmysql:8.0.20 2.启动镜像dockerrun-p3307:3306--namemysql8-eMYSQL_ROOT_PASSWORD=123456-dmysql:8.0.20 参数注解 检查是否启动成功dockerps 3.配置挂载创建挂载目录(请检查保证创建成......
  • 实现前端调度器nginx收到请求,调度到后端Apache、实现动静分离
    一、Apache服务器上安装httpdyuminstallhttpd-y二、生成包含IP地址的新页面echo192.168.1.4>/var/www/html/index.html三、开启服务,并设置为开机自启动systemctlstarthttpdsystemctlenablehttpd四、测试访问本机IP地址[17:13:26root@apache~]#curl192.......
  • nginx---防止盗链
    ngx_http_referer_module模块:用来阻止Referer首部无有效值的请求访问,可防止盗链valid_referersnone|blocked|server_names|string...;定义referer首部的合法可用值,不能匹配的将是非法值none:请求报文首部没有referer首部blocked:请求报文有referer首部,但无有效值se......
  • Docker笔记(一)docker 在linux里面的安装
    Docker笔记(一)docker在linux里面的安装为什么使用docker(docker理念)在开发环境,将源码+配置+软件等其他项目运行的所有的东西,都打包,直接都给运维,这样运维就不需要自己搭建项目运行的环境了,因为你已经拿到了开发人员本地的全部的东西,相当于拿到开发人员全部的东西,直接在运维那里就......
  • Nginx 可视化配置神器NginxConfig
    Nginx是前后端开发工程师必须掌握的神器。该神器有很多使用场景:比如反向代理、负载均衡、动静分离、跨域等等。把Nginx下载下来打开conf文件夹的nginx.conf文件,Nginx服务器的基础配置和默认的配置都存放于此。配置是让程序员非常头疼的事,比如Java后端框架SSM,大量配......