88 lines
2.7 KiB
Docker
88 lines
2.7 KiB
Docker
FROM alpine
|
|
|
|
ENV NGINX_VERSION=1.25.4
|
|
ARG PHP_VERSION="83"
|
|
|
|
RUN \
|
|
build_pkgs="build-base linux-headers openssl-dev pcre-dev wget zlib-dev" && \
|
|
runtime_pkgs="ca-certificates openssl pcre zlib tzdata " && \
|
|
apk --no-cache add ${build_pkgs} ${runtime_pkgs} && \
|
|
cd /tmp && \
|
|
wget https://nginx.org/download/nginx-${NGINX_VERSION}.tar.gz && \
|
|
tar xzf nginx-${NGINX_VERSION}.tar.gz && \
|
|
cd /tmp/nginx-${NGINX_VERSION} && \
|
|
./configure \
|
|
--prefix=/etc/nginx \
|
|
--sbin-path=/usr/sbin/nginx \
|
|
--conf-path=/etc/nginx/nginx.conf \
|
|
--error-log-path=/var/log/nginx/error.log \
|
|
--http-log-path=/var/log/nginx/access.log \
|
|
--pid-path=/var/run/nginx.pid \
|
|
--lock-path=/var/run/nginx.lock \
|
|
--http-client-body-temp-path=/var/cache/nginx/client_temp \
|
|
--http-proxy-temp-path=/var/cache/nginx/proxy_temp \
|
|
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp \
|
|
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp \
|
|
--http-scgi-temp-path=/var/cache/nginx/scgi_temp \
|
|
--user=nginx \
|
|
--group=nginx \
|
|
--with-http_ssl_module \
|
|
--with-http_realip_module \
|
|
--with-http_addition_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_random_index_module \
|
|
--with-http_secure_link_module \
|
|
--with-http_stub_status_module \
|
|
--with-http_auth_request_module \
|
|
--with-mail \
|
|
--with-mail_ssl_module \
|
|
--with-file-aio \
|
|
--with-threads \
|
|
--with-stream \
|
|
--with-stream_ssl_module \
|
|
--with-stream_realip_module \
|
|
--with-http_slice_module \
|
|
--with-http_v2_module && \
|
|
make && \
|
|
make install && \
|
|
sed -i -e 's/#access_log logs\/access.log main;/access_log \/dev\/stdout;/' -e 's/#error_log logs\/error.log notice;/error_log stderr notice;/' /etc/nginx/nginx.conf && \
|
|
addgroup -S nginx && \
|
|
adduser -D -S -h /var/cache/nginx -s /sbin/nologin -G nginx nginx && \
|
|
rm -rf /tmp/* && \
|
|
apk del ${build_pkgs} && \
|
|
rm -rf /var/cache/apk/*
|
|
|
|
ARG PHP_VERSION="83"
|
|
|
|
RUN apk --no-cache add php${PHP_VERSION} \
|
|
php${PHP_VERSION}-fpm \
|
|
php${PHP_VERSION}-curl \
|
|
php${PHP_VERSION}-pecl-redis \
|
|
curl \
|
|
vim \
|
|
git \
|
|
rm -rf /var/cache/apk/*
|
|
|
|
COPY nginx.conf /etc/nginx/nginx.conf
|
|
RUN mkdir -p /usr/share/nginx/html
|
|
COPY *.html /usr/share/nginx/html
|
|
COPY *.php /usr/share/nginx/html
|
|
COPY *.css /usr/share/nginx/html
|
|
COPY *.js /usr/share/nginx/html
|
|
COPY img /usr/share/nginx/html/img
|
|
RUN chown -R nginx:nginx /usr/share/nginx/html
|
|
|
|
RUN mkdir -p /usr/share/nginx/html/shared
|
|
RUN chown -R nobody:nobody /usr/share/nginx/html/shared
|
|
|
|
VOLUME ["/var/cache/nginx"]
|
|
|
|
EXPOSE 80
|
|
|
|
CMD php-fpm83 & nginx
|