#0000 - Add Nginx setup to Dockerfile with CORS support
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful

This commit introduces the Nginx setup by using the official Nginx Alpine image and copying the custom Nginx configuration into the Docker container. It also includes CORS headers in the Nginx configuration to allow requests from any origin with specific headers and methods.
This commit is contained in:
Guillaume "B.B." Van Hemmen 2024-10-21 09:58:34 +02:00
parent 6352d7f8a0
commit 6e94306755
Signed by: GuillaumeHemmen
GPG key ID: 7921E64524F7EB35
2 changed files with 38 additions and 0 deletions

View file

@ -1,3 +1,14 @@
# Use the official Nginx image from Docker Hub
FROM nginx:alpine3.20 FROM nginx:alpine3.20
# Copy your application files to the appropriate directory if needed
COPY dist /usr/share/nginx/html COPY dist /usr/share/nginx/html
# Copy custom Nginx configuration file to the container
COPY nginx.conf /etc/nginx/nginx.conf
# Expose the port that the application is running on
EXPOSE 80
# Start Nginx when the container launches
CMD ["nginx", "-g", "daemon off;"]

27
nginx.conf Normal file
View file

@ -0,0 +1,27 @@
server {
listen 80;
server_name yourdomain.com;
location / {
# other settings...
# Allow CORS for all domains (or specify a particular domain instead of *)
add_header 'Access-Control-Allow-Origin' '*';
# Allow specific headers
add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept, Authorization';
# Allow specific methods
add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, OPTIONS';
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept, Authorization';
add_header 'Access-Control-Allow-Methods' 'GET, POST, PUT, DELETE, OPTIONS';
add_header 'Access-Control-Max-Age' 1728000;
add_header 'Content-Type' 'text/plain; charset=utf-8';
add_header 'Content-Length' 0;
return 204;
}
}
}