Докер Составить | Виртуальные Хосты
Что не так в моем коде? заранее спасибо!
Я пытаюсь настроить виртуальный хост для моего док-контейнера. На localhost: 8000 работает отлично, но при попытке доступа через http: //borgesmelo.local/ появляется ошибка ERR_NAME_NOT_RESOLVED, что может отсутствовать?
Это мой -> docker-compose.yml
version: '3.3'
services:
borgesmelo_db:
image: mariadb:latest
container_name: borgesmelo_db
restart: always
volumes:
- ./mariadb/:/var/lib/mysql
restart: always
environment:
MYSQL_ROOT_PASSWORD: My@159#Sql
MYSQL_PASSWORD: My@159#Sql
borgesmelo_ws:
image: richarvey/nginx-php-fpm:latest
container_name: borgesmelo_ws
restart: always
volumes:
- ./public/:/var/www/html
ports:
- "8000:80"
borgesmelo_wp:
image: wordpress:latest
container_name: borgesmelo_wp
volumes:
- ./public/:/var/www/html
restart: always
environment:
VIRTUAL_HOST: borgesmelo.local
WORDPRESS_DB_HOST: borgesmelo_db:3306
WORDPRESS_DB_PASSWORD: My@159#Sql
depends_on:
- borgesmelo_db
- borgesmelo_ws
borgesmelo_phpmyadmin:
image: phpmyadmin/phpmyadmin:latest
container_name: borgesmelo_phpmyadmin
links:
- borgesmelo_db
ports:
- "8001:80"
environment:
- PMA_ARBITRARY=1
borgesmelo_vh:
image: jwilder/nginx-proxy
container_name: nginx-proxy
ports:
- "8002:80"
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
networks:
default:
external:
name: nginx-proxy
Это мой файл hosts (/etc/hosts) [macOS]
#DOCKER
127.0.0.1:8000 borgesmelo.local
1 ответ
Файл Hosts не поддерживает порты, так как он предназначен только для поиска по имени. Таким образом, вы должны установить свой файл hosts:
127.0.0.1 borgesmelo.local
Затем получите доступ к вашему приложению с http://borgesmelo.local:8000
,
Если вы прослушиваете порт 8000, потому что у вас уже есть что-то еще на 80-м порту, рассмотрите возможность использования nginx в качестве обратного прокси-сервера, а затем вы можете маршрутизировать в разные приложения на основе имени_сервера Таким образом, вы можете получить доступ к нескольким приложениям через порт 80. Если вы имеете дело с контейнерами Docker, то рассмотрите возможность использования Traefik в качестве обратного прокси-сервера.