diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..6975847 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,10 @@ +node_modules +npm-debug.log +Dockerfile* +docker-compose* +.dockerignore +.git +.gitignore +README.md +LICENSE +.vscode \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..750578b --- /dev/null +++ b/Dockerfile @@ -0,0 +1,15 @@ +# build environment +FROM node:16-alpine as build +WORKDIR /app + +COPY package.json ./ +RUN ["npm", "install"] +COPY . . +RUN ["npm", "run", "build"] + +# production environment +FROM nginx:stable-alpine +COPY --from=build /app/dist /usr/share/nginx/html +COPY ./nginx/default.conf /etc/nginx/conf.d/default.conf +EXPOSE 80 +CMD ["nginx", "-g", "daemon off;"] diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..3295617 --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,15 @@ +version: "3.8" +services: + web: + image: "doxfood" + build: + context: . + dockerfile: Dockerfile + + ports: + - "${DOXFOOD_SERVER_PORT:-9000}:80" + + environment: + TZ: "Europe/Paris" + + restart: unless-stopped \ No newline at end of file diff --git a/nginx/default.conf b/nginx/default.conf new file mode 100644 index 0000000..40a878b --- /dev/null +++ b/nginx/default.conf @@ -0,0 +1,17 @@ +server { + + listen 80; + + location / { + root /usr/share/nginx/html; + index index.html index.htm; + try_files $uri $uri/ /index.html; + } + + error_page 500 502 503 504 /50x.html; + + location = /50x.html { + root /usr/share/nginx/html; + } + +} diff --git a/vite.config.js b/vite.config.ts similarity index 100% rename from vite.config.js rename to vite.config.ts