mirror of
https://github.com/avatao-content/baseimage-tutorial-framework
synced 2024-11-22 13:01:32 +00:00
Use nginx to serve everything
This commit is contained in:
parent
6436953eea
commit
a4d101883e
18
Dockerfile
18
Dockerfile
@ -5,11 +5,17 @@ RUN apt-get update && \
|
||||
apt-get install -qy \
|
||||
supervisor \
|
||||
libzmq5 \
|
||||
nginx \
|
||||
# Provides envsubst
|
||||
gettext-base \
|
||||
# These dependencies are required to compile the bz2, readline, sqlite3
|
||||
# Python packages
|
||||
libbz2-dev \
|
||||
libreadline-dev \
|
||||
libsqlite3-dev
|
||||
libsqlite3-dev && \
|
||||
chown -R ${AVATAO_USER}: /var/log/nginx /var/lib/nginx && \
|
||||
# nginx runs as a regular user, and can't write to /run
|
||||
sed -i 's#pid /run/nginx.pid;#pid /tmp/nginx.pid;#g' /etc/nginx/nginx.conf
|
||||
|
||||
USER ${AVATAO_USER}
|
||||
|
||||
@ -43,5 +49,15 @@ COPY src/app ${TFW_APP_DIR}
|
||||
ENV TFW_EVENT_HANDLERS_DIR="/opt/event_handlers"
|
||||
COPY src/event_handlers ${TFW_EVENT_HANDLERS_DIR}
|
||||
|
||||
ENV TFW_FRONTEND_DIR="/srv/frontend"
|
||||
COPY src/frontend/dist ${TFW_FRONTEND_DIR}
|
||||
|
||||
ENV TFW_PUBLIC_PORT=8888
|
||||
EXPOSE ${TFW_PUBLIC_PORT}
|
||||
COPY src/nginx /etc/nginx
|
||||
USER root
|
||||
RUN envsubst "$(printenv | cut -d= -f1 | grep TFW_ | sed -e 's/^/$/g')" \
|
||||
< /etc/nginx/sites-available/default > /etc/nginx/sites-available/default
|
||||
USER ${AVATAO_USER}
|
||||
|
||||
CMD . "$HOME/.pyenvrc" && exec supervisord --nodaemon
|
||||
|
23
src/nginx/sites-available/default
Normal file
23
src/nginx/sites-available/default
Normal file
@ -0,0 +1,23 @@
|
||||
server {
|
||||
listen ${TFW_PUBLIC_PORT};
|
||||
server_name localhost;
|
||||
proxy_connect_timeout 7d;
|
||||
proxy_send_timeout 7d;
|
||||
proxy_read_timeout 7d;
|
||||
|
||||
location = /ws {
|
||||
proxy_pass http://127.0.0.1:${TFW_WEB_PORT};
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Upgrade $http_upgrade;
|
||||
proxy_set_header Connection "Upgrade";
|
||||
}
|
||||
|
||||
location /login/ {
|
||||
proxy_pass http://127.0.0.1:${TFW_LOGIN_APP_PORT};
|
||||
}
|
||||
|
||||
location / {
|
||||
root ${TFW_FRONTEND_DIR};
|
||||
try_files $uri $uri/ index.html;
|
||||
}
|
||||
}
|
@ -28,3 +28,8 @@ command=env python event_handler_main.py
|
||||
directory=%(ENV_TFW_LOGIN_APP_DIR)s
|
||||
command=env python server.py
|
||||
autostart=false
|
||||
|
||||
[program:nginx]
|
||||
command=/usr/sbin/nginx -g 'daemon off;'
|
||||
autostart=true
|
||||
autorestart=true
|
||||
|
Loading…
Reference in New Issue
Block a user