env variables handling
This commit is contained in:
25
Dockerfile
25
Dockerfile
@@ -1,14 +1,35 @@
|
||||
# Use a lightweight server
|
||||
FROM nginx:alpine
|
||||
|
||||
# Install bash for the script execution
|
||||
RUN apk add --no-cache bash
|
||||
|
||||
# Set working directory
|
||||
WORKDIR /usr/share/nginx/html
|
||||
|
||||
# Copy all the application files
|
||||
COPY . .
|
||||
|
||||
# Copy the .env file
|
||||
COPY .env .
|
||||
# Create a simple script to generate config.env.js
|
||||
RUN echo '#!/bin/sh' > /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo 'echo "// config.env.js - Generated from .env" > config.env.js' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo 'echo "// This file contains environment variables for the PWA" >> config.env.js' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo 'echo "// Generated on $(date)" >> config.env.js' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo 'echo "" >> config.env.js' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo 'echo "window.ENV_CONFIG = {" >> config.env.js' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo 'grep -v "^#" .env | grep "=" | while read line; do' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo ' key=$(echo $line | cut -d= -f1)' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo ' value=$(echo $line | cut -d= -f2-)' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo ' echo " $key: \"$value\"," >> config.env.js' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo 'done' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
echo 'echo "};" >> config.env.js' >> /usr/share/nginx/html/docker-generate-config.sh && \
|
||||
chmod +x /usr/share/nginx/html/docker-generate-config.sh
|
||||
|
||||
# Generate config.env.js from .env
|
||||
RUN /usr/share/nginx/html/docker-generate-config.sh
|
||||
|
||||
# Remove the .env file and the generation script for security
|
||||
RUN rm .env docker-generate-config.sh
|
||||
|
||||
# Expose port 80
|
||||
EXPOSE 80
|
||||
|
||||
Reference in New Issue
Block a user