我是 Docker 新手,在处理多个项目时遇到困难,因为它们都在同一端口上运行。
我的 docker-compose.yml:
我的../backend-web/Dockerfile:
FROM nginx
COPY nginx.conf /etc/nginx/conf.d/default.conf
还有我的 .env 文件,从其中加载端口:
DB_HOST=database-service
DB_ROOT_PASSWORD=
DB_DATABASE=
DB_USERNAME=
DB_PASSWORD=
BACKEND_PORT=443
DB_PORT=3306
REDIS_PORT=6379
PHP_FPM_INSTALL_XDEBUG=true
现在,当我执行 docker-compose up 时,这一切都可以工作,我可以访问 https://localhost,但我想要有超过 1 个项目,当我尝试对其他项目使用相同的 docker compose 文件时,它不起作用因为它使用相同的端口。我尝试将 443 更改为 444,将 mysql 端口更改为 3307,但它无法加载 https://localhost:444。
如何解决这个问题?
我曾短暂使用过 docker,但请记住在某些情况下您必须重建容器。更改端口后尝试
docker-compose up --build
?
我更喜欢为每个项目使用本地域而不是端口。只要保持代理容器运行(例如traefik),我们就可以
docker-compose up
任何使用默认端口80的项目
像这样的本地域:project1.localhost
,project2.localhost
...
您可以在这里找到更多参考:
dghdfhgg sds fdgsndbgsdkfs dfv mnsb sdmn vknasbf smn fksabdfm nmdbfkwe