Skip to content

Commit

Permalink
Merge pull request #285 from 2023-Winter-Bootcamp-Team-N/BE/fix/#273
Browse files Browse the repository at this point in the history
[fix] nginx 설정 변경
  • Loading branch information
wndjs803 committed Jan 30, 2024
2 parents 3f1c490 + 22f6ff6 commit 55a36ba
Show file tree
Hide file tree
Showing 3 changed files with 134 additions and 115 deletions.
2 changes: 1 addition & 1 deletion backend/account/urls.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@


urlpatterns = [
path('signin', MembersAPIView.as_view()),
path('signup', MembersAPIView.as_view()),
path('login', LoginAPIView.as_view()),
]

228 changes: 114 additions & 114 deletions docker-compose.prod.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ services:
celery:
container_name: celery
build: ./backend
command: sh -c 'celery -A nTeamProject.celery worker --loglevel=info'
command: sh -c 'celery -A nTeamProject.celery worker -c 2 --loglevel=info'
depends_on:
- rabbit
- db
Expand Down Expand Up @@ -90,119 +90,119 @@ services:
- nginx
entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 12h & wait $${!}; done;'"

prometheus:
image: prom/prometheus
container_name: prometheus
volumes:
- ./prometheus/config:/etc/prometheus
- prometheus-data:/prometheus
ports:
- 9090:9090
command:
- "--storage.tsdb.path=/prometheus"
- "--config.file=/etc/prometheus/prometheus.yml"
restart: always
networks:
- t4y

grafana:
image: grafana/grafana
container_name: grafana
ports:
- 3000:3000
volumes:
- grafana-data:/var/lib/grafana
- ./grafana/provisioning/:/etc/grafana/provisioning/
restart: always
depends_on:
- prometheus
networks:
- t4y

node_exporter:
image: prom/node-exporter
volumes:
- /proc:/host/proc:ro
- /sys:/host/sys:ro
- /:/rootfs:ro
command:
- "--path.procfs=/host/proc"
- "--path.rootfs=/rootfs"
- "--path.sysfs=/host/sys"
- "--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)"
- "--collector.cpu"
- "--collector.loadavg"
ports:
- "9100:9100"
networks:
- t4y

cadvisor:
image: gcr.io/cadvisor/cadvisor:v0.45.0

container_name: cadvisor
ports:
- 8080:8080
volumes:
- /:/rootfs:ro
- /var/run:/var/run:rw
- /sys:/sys:ro
- /var/lib/docker/:/var/lib/docker:ro
- /dev/disk/:/dev/disk:ro
depends_on:
- backend
networks:
- t4y

elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:7.10.2
container_name: elasticsearch
environment:
- "discovery.type=single-node"
ports:
- "9200:9200"
networks:
- t4y

logstash:
image: docker.elastic.co/logstash/logstash:7.10.2
container_name: logstash
volumes:
- ./backend/logging/:/logging/
- ./backend/logging/logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml
- ./backend/logging/logstash/pipeline:/usr/share/logstash/pipeline
ports:
- "5044:5044"
networks:
- t4y
depends_on:
- elasticsearch

kibana:
image: docker.elastic.co/kibana/kibana:7.10.2
container_name: kibana
ports:
- "5601:5601"
networks:
- t4y
depends_on:
- elasticsearch

filebeat:
image: docker.elastic.co/beats/filebeat:7.10.2
container_name: filebeat
volumes:
- ./backend/logging:/logging
- ./backend/logging/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro
- /var/lib/docker/containers:/var/lib/docker/containers:ro
- ./nginx/log:/var/log/nginx # nginx 로그를 호스트와 컨테이너 간에 공유
networks:
- t4y
depends_on:
- logstash
- elasticsearch
- kibana
command: filebeat -e -c /usr/share/filebeat/filebeat.yml
# prometheus:
# image: prom/prometheus
# container_name: prometheus
# volumes:
# - ./prometheus/config:/etc/prometheus
# - prometheus-data:/prometheus
# ports:
# - 9090:9090
# command:
# - "--storage.tsdb.path=/prometheus"
# - "--config.file=/etc/prometheus/prometheus.yml"
# restart: always
# networks:
# - t4y

# grafana:
# image: grafana/grafana
# container_name: grafana
# ports:
# - 3000:3000
# volumes:
# - grafana-data:/var/lib/grafana
# - ./grafana/provisioning/:/etc/grafana/provisioning/
# restart: always
# depends_on:
# - prometheus
# networks:
# - t4y

# node_exporter:
# image: prom/node-exporter
# volumes:
# - /proc:/host/proc:ro
# - /sys:/host/sys:ro
# - /:/rootfs:ro
# command:
# - "--path.procfs=/host/proc"
# - "--path.rootfs=/rootfs"
# - "--path.sysfs=/host/sys"
# - "--collector.filesystem.mount-points-exclude=^/(sys|proc|dev|host|etc)($$|/)"
# - "--collector.cpu"
# - "--collector.loadavg"
# ports:
# - "9100:9100"
# networks:
# - t4y

# cadvisor:
# image: gcr.io/cadvisor/cadvisor:v0.45.0

# container_name: cadvisor
# ports:
# - 8080:8080
# volumes:
# - /:/rootfs:ro
# - /var/run:/var/run:rw
# - /sys:/sys:ro
# - /var/lib/docker/:/var/lib/docker:ro
# - /dev/disk/:/dev/disk:ro
# depends_on:
# - backend
# networks:
# - t4y

# elasticsearch:
# image: docker.elastic.co/elasticsearch/elasticsearch:7.10.2
# container_name: elasticsearch
# environment:
# - "discovery.type=single-node"
# ports:
# - "9200:9200"
# networks:
# - t4y

# logstash:
# image: docker.elastic.co/logstash/logstash:7.10.2
# container_name: logstash
# volumes:
# - ./backend/logging/:/logging/
# - ./backend/logging/logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml
# - ./backend/logging/logstash/pipeline:/usr/share/logstash/pipeline
# ports:
# - "5044:5044"
# networks:
# - t4y
# depends_on:
# - elasticsearch

# kibana:
# image: docker.elastic.co/kibana/kibana:7.10.2
# container_name: kibana
# ports:
# - "5601:5601"
# networks:
# - t4y
# depends_on:
# - elasticsearch

# filebeat:
# image: docker.elastic.co/beats/filebeat:7.10.2
# container_name: filebeat
# volumes:
# - ./backend/logging:/logging
# - ./backend/logging/filebeat/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro
# - /var/lib/docker/containers:/var/lib/docker/containers:ro
# - ./nginx/log:/var/log/nginx # nginx 로그를 호스트와 컨테이너 간에 공유
# networks:
# - t4y
# depends_on:
# - logstash
# - elasticsearch
# - kibana
# command: filebeat -e -c /usr/share/filebeat/filebeat.yml

volumes:
grafana-data:
Expand Down
19 changes: 19 additions & 0 deletions nginx/nginx.conf
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,16 @@ http {
}

location / {
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, DELETE, PATCH, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization';
add_header 'Access-Control-Max-Age' 86400;
return 204;
}
add_header 'Access-Control-Allow-Origin' '*' always;
add_header 'Content-Type' 'application/json' always;

return 301 https://$host$request_uri;
}

Expand All @@ -43,6 +53,15 @@ http {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
if ($request_method = 'OPTIONS') {
add_header 'Access-Control-Allow-Origin' '*';
add_header 'Access-Control-Allow-Methods' 'GET, POST, DELETE, PATCH, OPTIONS';
add_header 'Access-Control-Allow-Headers' 'Content-Type, Authorization';
add_header 'Access-Control-Max-Age' 86400;
return 204;
}
add_header 'Access-Control-Allow-Origin' '*' always;
add_header 'Content-Type' 'application/json' always;
}

location /ws {
Expand Down

0 comments on commit 55a36ba

Please sign in to comment.