diff --git a/Dockerfile b/Dockerfile index 631a9a1..80ca380 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,6 +7,6 @@ RUN npm run build FROM nginx:alpine COPY --from=build /app/dist /usr/share/nginx/html -COPY nginx.conf /etc/nginx/templates/nginx.conf.template +COPY nginx-template.conf /etc/nginx/templates/default.conf.template EXPOSE 80 CMD ["/docker-entrypoint.sh", "nginx", "-g", "daemon off;"] \ No newline at end of file diff --git a/nginx-template.conf b/nginx-template.conf new file mode 100644 index 0000000..de89a74 --- /dev/null +++ b/nginx-template.conf @@ -0,0 +1,24 @@ +server { + listen 80; + server_name localhost; + + # Serve static files + location / { + root /usr/share/nginx/html; + index index.html index.htm; + try_files $uri $uri/ /index.html; + } + + # Proxy API requests to the backend server + location /api/ { + proxy_pass http://${BACKEND_HOST:-backend}:${BACKEND_PORT:-3001}/; + proxy_http_version 1.1; + proxy_set_header Upgrade $http_upgrade; + proxy_set_header Connection 'upgrade'; + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_cache_bypass $http_upgrade; + } +} \ No newline at end of file diff --git a/nginx.conf b/nginx.conf deleted file mode 100644 index 545389a..0000000 --- a/nginx.conf +++ /dev/null @@ -1,51 +0,0 @@ -events { - worker_connections 1024; -} - -http { - include /etc/nginx/mime.types; - default_type application/octet-stream; - - # Log format - log_format main '$remote_addr - $remote_user [$time_local] "$request" ' - '$status $body_bytes_sent "$http_referer" ' - '"$http_user_agent" "$http_x_forwarded_for"'; - - access_log /var/log/nginx/access.log main; - error_log /var/log/nginx/error.log; - - sendfile on; - keepalive_timeout 65; - - # Gzip compression - gzip on; - gzip_vary on; - gzip_min_length 1024; - gzip_types text/plain text/css text/xml text/javascript application/javascript application/xml+rss application/json; - - # Server block - server { - listen 80; - server_name localhost; - - # Serve static files - location / { - root /usr/share/nginx/html; - index index.html index.htm; - try_files $uri $uri/ /index.html; - } - - # Proxy API requests to the backend server - location /api/ { - proxy_pass http://${BACKEND_HOST:-backend}:${BACKEND_PORT:-3001}/; - proxy_http_version 1.1; - proxy_set_header Upgrade $http_upgrade; - proxy_set_header Connection 'upgrade'; - proxy_set_header Host $host; - proxy_set_header X-Real-IP $remote_addr; - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; - proxy_set_header X-Forwarded-Proto $scheme; - proxy_cache_bypass $http_upgrade; - } - } -} \ No newline at end of file