diff --git a/docker-compose.yml b/docker-compose.yml index f4a2188..5068f43 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -9,10 +9,9 @@ services: restart: unless-stopped ports: - "80:80" - - "443:443" volumes: - - certbot-etc:/etc/letsencrypt:ro - - webroot:/var/www/html + - ./docker/nginx/nginx.conf:/etc/nginx/nginx.conf:ro + - ./docker/nginx/conf.d:/etc/nginx/conf.d:ro depends_on: - backend @@ -28,22 +27,8 @@ services: volumes: - ./backend:/app - sqlite_data:/app/instance - expose: - - "8000" - - certbot: - image: certbot/certbot - container_name: certbot - volumes: - - certbot-etc:/etc/letsencrypt - - certbot-var:/var/lib/letsencrypt - - webroot:/var/www/html - depends_on: - - frontend - command: certonly --webroot --webroot-path=/var/www/html --email admin@itformhelp.ru --agree-tos --no-eff-email --force-renewal --staging -d itformhelp.ru -d www.itformhelp.ru + ports: + - "8000:8000" volumes: - sqlite_data: - certbot-etc: - certbot-var: - webroot: + sqlite_data: \ No newline at end of file diff --git a/docker/frontend/Dockerfile b/docker/frontend/Dockerfile index db8c6d0..d33e045 100644 --- a/docker/frontend/Dockerfile +++ b/docker/frontend/Dockerfile @@ -2,7 +2,7 @@ FROM node:18-alpine as build WORKDIR /app -# Copy package files +# Copy package files from frontend directory COPY frontend/package*.json ./ RUN npm install @@ -14,17 +14,16 @@ RUN npm run build FROM nginx:alpine -# Remove default nginx config -RUN rm /etc/nginx/conf.d/default.conf - # Copy built files COPY --from=build /app/dist /usr/share/nginx/html +# Create nginx config directory +RUN mkdir -p /etc/nginx/conf.d + # Copy nginx configuration -COPY docker/nginx/nginx.conf /etc/nginx/nginx.conf COPY docker/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf -# Create required directories +# Create required directories and set permissions RUN mkdir -p /var/cache/nginx \ /var/cache/nginx/client_temp \ /var/cache/nginx/proxy_temp \ @@ -32,9 +31,14 @@ RUN mkdir -p /var/cache/nginx \ /var/cache/nginx/uwsgi_temp \ /var/cache/nginx/scgi_temp \ /var/run \ - /etc/letsencrypt \ - /var/www/html + && chmod 777 /var/cache/nginx \ + /var/cache/nginx/client_temp \ + /var/cache/nginx/proxy_temp \ + /var/cache/nginx/fastcgi_temp \ + /var/cache/nginx/uwsgi_temp \ + /var/cache/nginx/scgi_temp \ + /var/run -EXPOSE 80 443 +# Remove user directive from nginx config -CMD ["nginx", "-g", "daemon off;"] +CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file diff --git a/docker/nginx/Dockerfile b/docker/nginx/Dockerfile index 870949f..4a24739 100644 --- a/docker/nginx/Dockerfile +++ b/docker/nginx/Dockerfile @@ -19,4 +19,4 @@ RUN mkdir -p /var/cache/nginx \ EXPOSE 8000 -CMD ["nginx", "-g", "daemon off;"] +CMD ["nginx", "-g", "daemon off;"] \ No newline at end of file diff --git a/docker/nginx/nginx.conf b/docker/nginx/nginx.conf index b62804f..0ab7c1f 100644 --- a/docker/nginx/nginx.conf +++ b/docker/nginx/nginx.conf @@ -1,5 +1,6 @@ user nginx; worker_processes auto; + error_log /var/log/nginx/error.log notice; pid /var/run/nginx.pid; @@ -16,8 +17,9 @@ http { '"$http_user_agent" "$http_x_forwarded_for"'; access_log /var/log/nginx/access.log main; + sendfile on; keepalive_timeout 65; include /etc/nginx/conf.d/*.conf; -} +} \ No newline at end of file