Changes: - fix README.md old json format usage - rename "redirect" option to "proxy_pass" - move docker-compose.yml and nginx.conf.j2 to examples and add to .gitignore - fix situation when one domain from domains.txt and servers.yaml appeared twice in nginx.conf
27 lines
758 B
Docker
27 lines
758 B
Docker
FROM python:3.11-alpine AS builder
|
|
|
|
RUN pip3 install --no-cache-dir pyyaml jinja2
|
|
|
|
COPY add_servers.py /add_servers.py
|
|
COPY servers.yaml /servers.yaml
|
|
COPY domains.txt /domains.txt
|
|
COPY nginx.conf.j2 /nginx.conf.j2
|
|
|
|
RUN python /add_servers.py --nginx-template /nginx.conf.j2 -o /nginx.conf --domains_list_txt /domains.txt --servers-config servers.yaml --certificates-path /ssl
|
|
|
|
# service
|
|
|
|
FROM nginx:alpine
|
|
|
|
COPY --from=builder /nginx.conf /etc/nginx/nginx.conf
|
|
COPY domains.txt /domains.txt
|
|
|
|
RUN echo "20 2 */7 * * nginx -s reload" > /etc/crontabs/root && \
|
|
\
|
|
echo "cp /domains.txt /ssl/domains.txt" > /entrypoint && \
|
|
echo "crond" >> /entrypoint && \
|
|
echo "nginx -g 'daemon off;'" >> /entrypoint
|
|
|
|
ENTRYPOINT ["/bin/sh"]
|
|
CMD ["/entrypoint"]
|