Как мне развернуть этот пример Traefik в Kubernetes? - PullRequest
0 голосов
/ 27 августа 2018

Я следую руководству по началу работы для Traefik с здесь и пытаюсь запустить службу в Kubernetes (Minikube) вместо Docker:

Edit your docker-compose.yml file and add the following at the end of your file.
# ...
  whoami:
    image: emilevauge/whoami # A container that exposes an API to show its IP address
    labels:
      - "traefik.frontend.rule=Host:whoami.docker.localhost"**

Я предполагаю, что я запускаю это как:

kubectl run whoami-service --image=emilevauge/whoami --labels='traefik.frontend.rule=Host:whoami.docker.localhost'

однако это приводит к ошибке:

The Deployment "whoami-service" is invalid:
* metadata.labels: Invalid value: "'traefik.frontend.rule": name part must consist of alphanumeric characters, '-', '_' or '.', and....

Так чего мне здесь не хватает? Как развернуть вышеупомянутое в моем кластере Minikube Kubernetes?

1 Ответ

0 голосов
/ 28 августа 2018

Я не уверен, соответствует ли это тому, что вы ищете, но у Traefik есть небольшой учебник для настройки контроллера Ingress на Kubernetes с great документ о конфигурации, а также.

Если вы просто хотите, чтобы это конкретное изображение работало, вы можете передать метку в качестве аргумента модулю, возможно, с помощью kubectl run. С выхода kubectl run help:

# Start the nginx container using the default command, but use custom arguments (arg1 .. argN) for that command.
kubectl run nginx --image=nginx -- <arg1> <arg2> ... <argN>

Или, возможно, вручную в манифесте:

...
containers:
  - name: whoami
    image: emilevauge/whoami
    args: ["traefik.frontend.rule: "Host:whoami.docker.localhost"]

Никогда прежде не работал с изображением в примере, я не знаю, будет ли работать любой из приведенных выше примеров.

Надеюсь, это немного поможет!

...