summaryrefslogtreecommitdiffstats
path: root/frontend
diff options
context:
space:
mode:
Diffstat (limited to 'frontend')
-rw-r--r--frontend/Dockerfile.prod14
-rw-r--r--frontend/default.conf45
-rw-r--r--frontend/public/index.html3
3 files changed, 61 insertions, 1 deletions
diff --git a/frontend/Dockerfile.prod b/frontend/Dockerfile.prod
new file mode 100644
index 0000000..7c4d6d1
--- /dev/null
+++ b/frontend/Dockerfile.prod
@@ -0,0 +1,14 @@
+FROM node:12-alpine AS builder
+
+WORKDIR /app
+COPY package-lock.json package.json ./
+RUN npm ci
+COPY . ./
+ENV NODE_ENV=production
+RUN npm run build
+
+FROM nginx:alpine AS server
+
+WORKDIR /usr/share/nginx/html
+COPY default.conf /etc/nginx/conf.d/default.conf
+COPY --from=builder /app/build ./
diff --git a/frontend/default.conf b/frontend/default.conf
new file mode 100644
index 0000000..3856e3f
--- /dev/null
+++ b/frontend/default.conf
@@ -0,0 +1,45 @@
+server {
+ listen 80;
+ server_name localhost;
+
+ #charset koi8-r;
+ #access_log /var/log/nginx/host.access.log main;
+
+ location / {
+ root /usr/share/nginx/html;
+ #index index.html index.htm;
+ try_files $uri $uri/ /index.html;
+ }
+
+ #error_page 404 /404.html;
+
+ # redirect server error pages to the static page /50x.html
+ #
+ error_page 500 502 503 504 /50x.html;
+ location = /50x.html {
+ root /usr/share/nginx/html;
+ }
+
+ # proxy the PHP scripts to Apache listening on 127.0.0.1:80
+ #
+ #location ~ \.php$ {
+ # proxy_pass http://127.0.0.1;
+ #}
+
+ # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
+ #
+ #location ~ \.php$ {
+ # root html;
+ # fastcgi_pass 127.0.0.1:9000;
+ # fastcgi_index index.php;
+ # fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
+ # include fastcgi_params;
+ #}
+
+ # deny access to .htaccess files, if Apache's document root
+ # concurs with nginx's one
+ #
+ #location ~ /\.ht {
+ # deny all;
+ #}
+} \ No newline at end of file
diff --git a/frontend/public/index.html b/frontend/public/index.html
index cc94d49..b41fd33 100644
--- a/frontend/public/index.html
+++ b/frontend/public/index.html
@@ -7,7 +7,8 @@
<meta name="theme-color" content="#000000" />
<meta http-equiv="Content-Security-Policy" content="default-src 'self' localhost:4000;
style-src 'self' 'unsafe-inline';
- img-src * data:;" />
+ img-src * data:;
+ script-src 'self' 'unsafe-inline';" />
<meta
name="description"
content="Web site created using create-react-app"