我正试着和码头商建立贸易关系。但在第四步
使用云本地边缘路由器,如Traefik (或nginx或haproxy):将所有传入请求路由到/api/到后端。将所有其他传入请求路由到前端。
我该怎么做?我在编织文档里找不到它,我也不理解traefik文档。
更新:--我现在从源代码中构建了它,并且它可以工作。我会尝试给我的答案,如果它起作用,我会做出反应,所以如果你有同样的问题,你可以用它。
发布于 2018-12-12 10:22:16
我设法用下面的撰写文件启动并运行了这个程序。在新文件夹中创建具有以下内容的config.json文件:
{
"database": {
"driver": {
"type": "mysql",
"host": "mysql",
"port": 3306,
"username": "root",
"password": "my-secret-pw",
"database": "commerce"
},
"logging": ["error", "warn"]
},
"basePath": "/",
"session": {
"secret": "fkj49l7WwjUtqcfLZKlLA269J28kC4uL",
"issuer": "https://change.me",
"lifetime": "12h"
},
"importTldListOnStart": true
}在同一个文件夹中创建具有以下内容的docker-compose.yml:
version: '3'
services:
# The reverse proxy service (Traefik)
reverse-proxy:
image: traefik # The official Traefik docker image
command: --web --docker --docker.domain=docker.localhost --logLevel=DEBUG
ports:
- "80:80" # The HTTP port
volumes:
- /var/run/docker.sock:/var/run/docker.sock # So that Traefik can listen to the Docker events
mysql:
image: mysql:5.6
environment:
MYSQL_ROOT_PASSWORD: my-secret-pw
MYSQL_DATABASE: commerce
commerce:
image: weweave/commerce
ports:
- "3000:3000"
depends_on:
- "mysql"
volumes:
- ./config.json:/usr/src/app/config.json
labels:
- "traefik.frontend.rule=Host:commerce.docker.localhost;PathPrefix:/api/"
- "traefik.port=3000"
commerce-www:
image: weweave/commerce-www
ports:
- "8080:8080"
depends_on:
- "commerce"
labels:
- "traefik.frontend.rule=Host:commerce.docker.localhost"用docker-compose up -d把所有的东西都拿出来
然后打开浏览器并导航到:http://commerce.docker.localhost
https://stackoverflow.com/questions/53739377
复制相似问题