暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Dockerfile 创建镜像 分层设计(下)

数据中心知识 2023-02-27
214

获取nginx源码包, 进入到/opt/dockerfile/web/nginx/目录下,考虑到后期可能还会有其他版本的nginx镜像,因此也可以创建专门给nginx1.23.3的目录,进入目录后通过nginx官网获取nginx1.23.3版本源码包。

    mkdir nginx-1.23.3
    wget http://nginx.org/download/nginx-1.23.3.tar.gz

    接下来创建Dockerfile及nginx.1.23.3-build-command.sh文件

      Dockerfile
      #Base image for nginx1.23.3
      FROM 192.168.3.107/registry/centos7.9-base:v1.0
      MAINTAINER "yanming_sun@njziqixu.com"
      ADD nginx-1.23.3.tar.gz usr/local/src
      RUN cd usr/local/src/nginx-1.23.3 && yum -y install pcre-devel openssl openssl-devel zlib zlib-devel libxml2 libxml2-dev libxslt-devel gd gd-devel libgeoip-dev GeoIP-devel.x86_64 && ./configure --user=nginx --group=nginx --prefix=/usr/local/nginx --with-file-aio --with-http_ssl_module --with-http_realip_module --with-http_addition_module --with-http_xslt_module --with-http_image_filter_module --with-http_geoip_module --with-http_sub_module --with-http_dav_module --with-http_flv_module --with-http_mp4_module --with-http_gunzip_module --with-http_gzip_static_module --with-http_auth_request_module --with-http_random_index_module --with-http_secure_link_module --with-http_degradation_module --with-http_stub_status_module && make && make install
        nginx.1.23.3-build-command.sh
        #!/bin/bash
        TAG=$1
        docker build -t 192.168.3.107/registry/nginx1.23.3:${TAG} .
        运行nginx.1.23.3-build-command.sh
        bash nginx.1.23.3-build-command.sh v1.0

        运行中

        完成

        验证镜像可用性,进入容器后运行nginx

          docker run -it --rm -p 5000:80 --name cat 192.168.3.107/registry/nginx1.23.3:v1.0

          使用软连接来连接(相当于在bin文件生成一个快捷入口

            ln -s usr/local/nginx/sbin/nginx  usr/local/bin


            发现/usr/local/bin多了nginx这个文件,然后再去使用nginx -t 发现报错


            解决办法:

              useradd nginx


              再次测试



              文章转载自数据中心知识,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

              评论