File size: 1,312 Bytes
1f8085b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
fad515f
 
 
1f8085b
 
 
 
 
 
973c33a
 
854e18a
1f8085b
 
 
 
d272162
1f8085b
 
973c33a
ae4ef28
 
f5ad5fe
 
1f8085b
 
 
fad515f
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
FROM alpine:latest

RUN addgroup -S nginx_admin && adduser -S app_user -G nginx_admin
#RUN adduser -D -g 'app_user'  nginx_admin

WORKDIR /app


# Install necessary packages
RUN apk update && \
    apk upgrade && \
    apk add --no-cache openrc bash su-exec python3 py3-pip net-tools udev nginx

# Copy Flask application
COPY ./FlaskWebApp /app/FlaskWebApp 
COPY ./requirements.txt /app/requirements.txt

COPY ./start_pyapps.sh /app/start_pyapps.sh
COPY ./start_services.sh /app/start_services.sh

# Copy Angular build files to Nginx web directory
ADD ./resources.tar /var/www/portfolio

# Backup original nginx.conf and copy new one
COPY ./nginx.conf /etc/nginx/nginx.conf 

#RUN mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.orig
#COPY ./default.conf /etc/nginx/conf.d/default.conf

# Python virtual environment
RUN python3 -m venv /app/PyEnv && \
    /app/PyEnv/bin/pip install --upgrade pip && \
    /app/PyEnv/bin/pip install -r /app/requirements.txt && \
    chmod -R +x /app

RUN touch /app/flask.log && \
    touch /var/lib/nginx/logs/error.log && \
    mkdir -p /var/log/nginx /run/nginx /var/lib/nginx/logs/ && \
    chown -R app_user:nginx_admin /var/lib/nginx /var/log/nginx /var/lib/nginx/logs/ /app &&\
    chmod -R 755 /var/lib/nginx/logs/

USER app_user

CMD ["sh","-c","/app/start_services.sh"]