|
FROM nginx:alpine
|
|
|
|
|
|
RUN adduser -D -u 1000 user
|
|
|
|
# Create necessary directories with proper ownership
|
|
RUN mkdir -p /usr/share/nginx/html && \
|
|
chown -R user:user /usr/share/nginx/html
|
|
|
|
|
|
USER user
|
|
|
|
|
|
ENV HOME=/home/user \
|
|
PATH=/home/user/.local/bin:$PATH
|
|
|
|
|
|
WORKDIR $HOME/app
|
|
|
|
|
|
COPY --chown=user . $HOME/app
|
|
|
|
|
|
USER root
|
|
|
|
|
|
RUN echo 'server { \
|
|
listen 7860; \
|
|
server_name _; \
|
|
location / { \
|
|
root /usr/share/nginx/html; \
|
|
index index.html; \
|
|
try_files $uri $uri/ /index.html; \
|
|
} \
|
|
}' > /etc/nginx/conf.d/default.conf
|
|
|
|
|
|
RUN cp -r $HOME/app/* /usr/share/nginx/html/ && \
|
|
chmod -R 755 /usr/share/nginx/html && \
|
|
chown -R user:user /usr/share/nginx/html
|
|
|
|
|
|
EXPOSE 7860
|
|
|
|
|
|
USER user
|
|
|
|
|
|
CMD ["nginx", "-g", "daemon off;"]
|
|
|