Настройка Weweave Commerce и Traefik - PullRequest
0 голосов
/ 12 декабря 2018

Я пытаюсь настроить коммерцию переплетения с помощью докера.Но на шаге 4

Используйте облачный собственный граничный маршрутизатор, такой как Traefik (или nginx или haproxy): перенаправьте все входящие запросы в / api / на серверную часть.Направьте все остальные входящие запросы на внешний интерфейс.

Как я могу это сделать?Я не могу найти его в документах переплетения, и я не понимаю документы traefik.

Обновление: Я создал его из исходного кода, и он работает.Я попробую ответ, который мне дан, и отреагирует, если он сработает, поэтому, если у вас есть тот же вопрос, вы можете использовать его.

1 Ответ

0 голосов
/ 12 декабря 2018

Мне удалось запустить это с помощью следующего файла compose.Создайте файл 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

...