Я хочу настроить свое dockerized приложение django с помощью nginx и запустить его на экземпляре EC2, но я не могу заставить его работать. Я новичок в nginx.
Моя ошибка, когда я делаю docker-compose -f production.yml up
является:
клиент отправил неверный метод при чтении строки запроса клиента, клиент: 80.153.184.19, сервер: ec2-XXXXX.eu-central-2.compute.amazonaws.com, запрос: "�U�F'��Io�q� +! �P��
И мне нравится, что? Нет ли какой-либо базовой конфигурации для бесперебойной работы?
Моя конфигурация nginx myconf:
server {
set $my_host $host;
if ($host ~ "\d+\.\d+\.\d+\.\d+") {
set $my_host "ec2-XXXXX.eu-central-2.compute.amazonaws.com";
}
listen 80;
server_name ec2-XXXXX.eu-central-2.compute.amazonaws.com;
charset utf-8;
error_log /dev/stdout info;
access_log /dev/stdout;
location / {
proxy_pass http://django:5000;
proxy_set_header Host $my_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Мой docker-compose:
version: '3'
#volumes:
# production_caddy: {}
services:
django:
build:
context: .
dockerfile: ./compose/production/django/Dockerfile
image: heatbeat_website_production_django
env_file:
- ./.envs/.production/.django
- ./.envs/.production/.postgres
command: /start
nginx:
build:
context: .
dockerfile: ./compose/production/nginx/Dockerfile
ports:
- "0.0.0.0:8080:80"
depends_on:
- django
redis:
image: redis:5.0
мой файл докеров для nginx:
FROM tutum/nginx
RUN rm /etc/nginx/sites-enabled/default
COPY ./compose/production/nginx/myconf.conf /etc/nginx/sites-enabled/default
Я очень благодарен за любую помощь ... Я так застрял ... Заранее спасибо!