From c9b6f7e7b02cb7a8036c6ae64075759bc87b6061 Mon Sep 17 00:00:00 2001 From: Maksym Pavlenko Date: Thu, 30 May 2019 12:57:07 -0700 Subject: [PATCH] Add nginx routing --- .dockerignore | 1 + cmd/nginx/Dockerfile | 1 + cmd/nginx/podsync.conf | 33 ++++++++++++++++++++++++++++++++- docker-compose.yml | 6 +++--- 4 files changed, 37 insertions(+), 4 deletions(-) diff --git a/.dockerignore b/.dockerignore index 7e5da87..ad13f4a 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,2 +1,3 @@ node_modules/ vendor/ +bin/ \ No newline at end of file diff --git a/cmd/nginx/Dockerfile b/cmd/nginx/Dockerfile index c69df4d..3265226 100644 --- a/cmd/nginx/Dockerfile +++ b/cmd/nginx/Dockerfile @@ -13,3 +13,4 @@ COPY cmd/nginx/podsync.conf /etc/nginx/nginx.conf COPY cmd/nginx/robots.txt /var/www/podsync/ COPY --from=builder /app/dist/html/ /var/www/podsync/ COPY --from=builder /app/dist/assets/ /var/www/podsync/assets/ +COPY /assets/favicon.ico /var/www/podsync/ diff --git a/cmd/nginx/podsync.conf b/cmd/nginx/podsync.conf index eb7dedc..77b03da 100644 --- a/cmd/nginx/podsync.conf +++ b/cmd/nginx/podsync.conf @@ -19,6 +19,17 @@ http { gzip_min_length 1000; gzip_proxied any; + upstream api { + server api:5001; + } + + upstream resolver { + server resolver:8080; + } + + proxy_set_header Host $host; + proxy_set_header X-Forwarded-For $remote_addr; + server { server_name _; listen 80; @@ -31,8 +42,28 @@ http { return 200 "pong\n"; } + location /download { + proxy_read_timeout 180s; + proxy_pass http://resolver; + } + + location = /api/webhooks { + proxy_pass http://api; + client_max_body_size 128k; + } + + location ~ (/user|/api) { + proxy_pass http://api; + } + location / { - try_files $uri $uri.html $uri/ =404; + try_files $uri $uri.html $uri/ @api; + } + + location @api { + proxy_pass http://api; + proxy_buffers 8 16k; + proxy_buffer_size 16k; } } } diff --git a/docker-compose.yml b/docker-compose.yml index 9c5ff8a..489cf4f 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -6,7 +6,7 @@ services: container_name: api restart: always ports: - - 8080:5001 + - 5001 environment: - REDIS_CONNECTION_URL=redis://redis - POSTGRES_CONNECTION_URL={POSTGRES_CONNECTION_URL} @@ -37,14 +37,14 @@ services: container_name: nginx restart: always ports: - - 8081:80 + - 80:80 resolver: image: mxpv/resolver:latest container_name: resolver command: --workers 8 restart: always ports: - - 8082:8080 + - 8080 environment: - AWS_DEFAULT_REGION=us-east-1 - DYNAMO_FEEDS_TABLE_NAME=Prod_Feeds