Это, как я понимаю, поток идет речь:Отображение входящего порта в kubernetes службу другому порту на Docker контейнера
- Когда запрашивающий услугу kubernetes (через HTTP, например) Я использую порт 80.
- запрос направляется в бобе (по-прежнему на порт 80)
- порт пересылает запрос на (Докер) контейнер, который предоставляет порт 80
- контейнер обрабатывает запрос
Однако мой контейнер предоставляет другой порт, скажем 3000. Как сделать сопоставление портов, например, 80: 3000 на шаге 2 или 3?
Есть путающие варианты, такие как targetport
и hostport
в документах kubernetes, которые мне не помогли. kubectl port-forward
, похоже, перенаправляет только мой локальный (рабочий) порт машины на конкретный модуль для отладки.
Эти команды, которые я использую для создания сервиса в Google Cloud:
kubectl run test-app --image=eu.gcr.io/myproject/my_app --port=80
kubectl expose deployment test-app --type="LoadBalancer"
есть некоторая опечатка, вероятно, так как вы определяете 'targetPort' для своей службы как' 3001', тогда как контейнер предоставляет порт '3000' –