gpt4 book ai didi

docker - Docker Compose的主机解析不适用于自定义主机名

转载 作者:行者123 更新时间:2023-12-02 21:14:27 26 4
gpt4 key购买 nike

我有一个Docker Compose,运行时允许我使用端口80(例如localhost:8080)直接在浏览器中访问容器,但是我想添加自己的自定义主机名,例如backend.local,而不是如何在Docker Compose文件中执行此操作

我已经将backend.local添加到我的Windows主机文件中,并完成了 Composer 构建,但是我不断收到“无法访问此站点”错误消息

# Adopt version 2 syntax:
# https://docs.docker.com/compose/compose-file/#/versioning
version: '3'

volumes:
database_data:
driver: local

services:
###########################
# Setup the Nginx container
###########################
nginx:
image: nginx:latest
container_name: nginx-container
volumes:
- ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
dns:
- 192.168.55.10
dns_search: backend.local

###########################
# Setup the PHP container
###########################
php:
build: ./docker/php/
container_name: php-container
expose:
- 9000
volumes:
- .:/var/www
hostname: backend.local

###########################
# Setup the Database (MySQL) container
###########################
mysql:
image: mysql:latest
container_name: mysql-container
expose:
- 3306
volumes:
- database_data:/var/lib/mysql
- ./db/bootstrap.sql.gz:/docker-entrypoint-initdb.d/bootstrap.sql.gz
environment:
MYSQL_ROOT_PASSWORD: secret
MYSQL_DATABASE: project
MYSQL_USER: project
MYSQL_PASSWORD: project

最佳答案

Docker无法影响主机的DNS解析,因此您可以做的所有事情是:

  • 将映射放入主机文件backend.local-> localhost
  • 使用ports语句在8080端口
  • 上公开您的应用程序
  • 然后,您可以在以下位置访问您的应用程序:localhost:8080和backend.local:8080
  • 关于docker - Docker Compose的主机解析不适用于自定义主机名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52147700/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com