@Ynicum_navern
php, golang

Как настроить docker для работы из под домена на локально машине?

Добрый день! Разрабатываю интернет-магазин, нужно интегрировать оплату, а для этого нужно иметь домен.

У меня есть docker-compose с nginx и php-fpm:
version: '3'
services:
  shop-nginx:
    build:
      context: ./docker
      dockerfile: nginx.docker
    volumes:
      - .:/app
    depends_on:
      - shop-php-fpm
    ports:
      - "8083:80"
  shop-php-fpm:
    build:
      context: ./docker
      dockerfile: php-fpm.docker
    volumes:
      - .:/app
      - ./docker/php-fpm/uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
    tty: true

Весь файл: https://github.com/k0v4back/shop-symfony/blob/mast...

И есть настройки для nginx:
server {
    listen 80;
    index index.php index.html;
    root /app/public;

    client_max_body_size 50m;

    location / {
        try_files $uri /index.php?$args;
    }

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass shop-php-fpm:9000;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        fastcgi_param PATH_INFO $fastcgi_path_info;
    }
}


Вопрос: что нужно изменить в моих конфигах, чтобы сайт заработал под доменом, например k0v4-shop.com на локальной машине?

P.S
Уже пробовал настроить server_name в nginx и потом в /etc/hosts на своей машине прописать адрес, но всё равно ничего не получилось.
Подскажите, в каком направлении двигаться, что гуглить или какие ресурсы почитать, для того чтобы всё настроить и понять как это работает.

P.S.S
Весть код лежит на github: https://github.com/k0v4back/shop-symfony
  • Вопрос задан
  • 628 просмотров
Решения вопроса 1
@andrei_pro
Добавьте в /etc/hosts:
127.0.0.1 yourdomain.local

В докере порт 80 наружу, если ходите открывать yourdomain.local
ports:
- "80:80"

server_name не обязательно если у вас один хост.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@sl0
А по ip сайт доступен?
Вообще я бы поменял com на test. Возможно, что браузер пытается искать его через dns.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы