对不起,我通常是docker和Web开发的新手,但我制作了基本的docker compose服务器,该服务器托管我的本地PHP文件并显示一些文本。它可以与本地主机正常工作,但是我购买了一些域,并且想知道如何将连接本地主机更改为域,以便任何人都可以连接到该主机。我的IP已经为外部连接设置了,并且可以在我的ssh服务器上使用,所以我不需要这样做。我尝试查找时似乎找不到任何结果。因此,我只需要知道在docker撰写文件或设置中要进行哪些更改即可改为进入域。
这是我的docker-compose文件:
services:
product-service:
build: ./product
volumes:
- ./product:/usr/src/app
ports:
- 5001:80
website:
image: php:apache
volumes:
- ./website:/var/www/html
ports:
- 5000:80
depends_on:
- product-service
答案 0 :(得分:1)
没有更多关于您的代码逻辑的知识,我不确定是否可以仅通过此答案使其完全运行。但是我想我可以给出一个抽象的清单。
由于您的docker-compose配置,端口5001、5000已向localhost开放。如果已经将这些端口配置为可打开到外部网络,则您已经可以键入yourdomain.com:5000进行访问。
如果您只想通过键入yourdomain.com
(不带端口)进行访问。我假设您的website
服务将为您提供服务:
80
,并将其与80
服务的端口website
连接:website:
image: php:apache
volumes:
- ./website:/var/www/html
ports:
- 80:80
depends_on:
- product-service
product-service
API的任何AJAX调用都将被调用yourdomain.com:5001
:在website
服务内部,它可以使用product-serivce
来调用localhost:5001
API。但是从用户浏览器来看,任何AJAX调用都将被计为外部调用,因此对此服务的任何AJAX调用都必须配置为yourdomain.com:5001