Suggest a feature
×

Welcome to TagMyCode

Please login or create account to add a snippet.
0
0
 
0
Language: Bash
Posted by: Сергей Шевченко
Added: Dec 16, 2019 3:39 PM
Views: 7
Tags: no tags
  1. FROM nginx:1.17
  2.  
  3. WORKDIR /etc/nginx
  4.  
  5. ARG NGINX_HOST_PORT
  6. ARG NGINX_HOST_SSL_PORT
  7.  
  8. ENV NGINX_HOST_PORT=${NGINX_HOST_PORT}
  9. ENV NGINX_HOST_SSL_PORT=${NGINX_HOST_SSL_PORT}
  10.  
  11. RUN mkdir -p /var/log/nginx/bbh \
  12.     && touch access.log error.log
  13.  
  14. RUN echo '===========================================================================================================' \
  15.     && echo 'user root;'                                                                       > ./nginx.conf \
  16.     && echo 'worker_processes 1;'                                                             >> ./nginx.conf \
  17.     && echo 'pid /run/nginx.pid;'                                                             >> ./nginx.conf \
  18.     && echo ''                                                                                >> ./nginx.conf \
  19.     && echo 'events {'                                                                        >> ./nginx.conf \
  20.     && echo '    worker_connections 4086;'                                                    >> ./nginx.conf \
  21.     && echo '    use epoll;'                                                                  >> ./nginx.conf \
  22.     && echo '    multi_accept on;'                                                            >> ./nginx.conf \
  23.     && echo '}'                                                                               >> ./nginx.conf \
  24.     && echo ''                                                                                >> ./nginx.conf \
  25.     && echo 'http {'                                                                          >> ./nginx.conf \
  26.     && echo ''                                                                                >> ./nginx.conf \
  27.     && echo '    sendfile on;'                                                                >> ./nginx.conf \
  28.     && echo '    tcp_nopush on;'                                                              >> ./nginx.conf \
  29.     && echo '    tcp_nodelay on;'                                                             >> ./nginx.conf \
  30.     && echo '    keepalive_timeout 65;'                                                       >> ./nginx.conf \
  31.     && echo '    keepalive_requests 1000;'                                                    >> ./nginx.conf \
  32.     && echo '    types_hash_max_size 2048;'                                                   >> ./nginx.conf \
  33.     && echo ''                                                                                >> ./nginx.conf \
  34.     && echo '    include /etc/nginx/mime.types;'                                              >> ./nginx.conf \
  35.     && echo '    default_type application/octet-stream;'                                      >> ./nginx.conf \
  36.     && echo ''                                                                                >> ./nginx.conf \
  37.     && echo '    access_log /var/log/nginx/access.log;'                                       >> ./nginx.conf \
  38.     && echo '    error_log /var/log/nginx/error.log;'                                         >> ./nginx.conf \
  39.     && echo ''                                                                                >> ./nginx.conf \
  40.     && echo '    gzip on;'                                                                    >> ./nginx.conf \
  41.     && echo '    gzip_min_length 10240;'                                                      >> ./nginx.conf \
  42.     && echo '    gzip_proxied expired no-cache no-store private auth;'                        >> ./nginx.conf \
  43.     && echo '    gzip_types text/plain text/css text/xml text/javascript application/x-javascript application/xml;' >> ./nginx.conf \
  44.     && echo '    gzip_disable "msie6";'                                                       >> ./nginx.conf \
  45.     && echo ''                                                                                >> ./nginx.conf \
  46.     && echo '    server {'                                                                    >> ./nginx.conf \
  47.     && echo '        listen 80;'                                                              >> ./nginx.conf \
  48.     && echo '        index index.php;'                                                        >> ./nginx.conf \
  49.     && echo '        root /var/www/bbh/public;'                                               >> ./nginx.conf \
  50.     && echo ''                                                                                >> ./nginx.conf \
  51.     && echo '        access_log /var/log/nginx/bbh/access.log;'                               >> ./nginx.conf \
  52.     && echo '        error_log /var/log/nginx/bbh/error.log;'                                 >> ./nginx.conf \
  53.     && echo ''                                                                                >> ./nginx.conf \
  54.     && echo '        location ~ \.php$ {'                                                     >> ./nginx.conf \
  55.     && echo '            try_files $uri =404;'                                                >> ./nginx.conf \
  56.     && echo '            fastcgi_split_path_info ^(.+\.php)(/.+)$;'                           >> ./nginx.conf \
  57.     && echo '            fastcgi_pass bbh_php_fpm:9000;'                                      >> ./nginx.conf \
  58.     && echo '            fastcgi_index index.php;'                                            >> ./nginx.conf \
  59.     && echo '            include fastcgi_params;'                                             >> ./nginx.conf \
  60.     && echo '            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;'   >> ./nginx.conf \
  61.     && echo '            fastcgi_param PATH_INFO $fastcgi_path_info;'                         >> ./nginx.conf \
  62.     && echo '        }'                                                                       >> ./nginx.conf \
  63.     && echo '        location / {'                                                            >> ./nginx.conf \
  64.     && echo '            try_files $uri $uri/ /index.php?$query_string;'                      >> ./nginx.conf \
  65.     && echo '        }'                                                                       >> ./nginx.conf \
  66.     && echo '    }'                                                                           >> ./nginx.conf \
  67.     && echo '}'                                                                               >> ./nginx.conf \
  68.     && echo '=========================================================================================================='
  69.  
  70. EXPOSE ${NGINX_HOST_PORT} ${NGINX_HOST_SSL_PORT}
  71.  
  72. CMD ["nginx-debug", "-g", "daemon off;"]
  73.