Kubernetes Pod с несколькими контейнерами не может соединиться друг с другом (проблема DNS ?!) - PullRequest
0 голосов
/ 14 января 2020

Для нашего CI-конвейера я настроил конфигурацию pod Kubernetes (см. Ниже). Существует одна проблема, связанная с тем, что приложение php не может подключиться к контейнеру mysql, поскольку оно не может разрешить хост "mysql". Сообщение об ошибке:

mysqli_connect(): php_network_getaddresses: getaddrinfo failed: Name or service not known

pod config:

apiVersion: v1
kind: Pod
spec:
  containers:
  - name: php
    image: docker.pkg.github.com/foo-org/bar-php/bar-php:latest
  - name: nginx
    image: docker.pkg.github.com/foo-org/bar-nginx/bar-nginx:latest
    command:
    - cat
    tty: true
  - name: mysql
    image: docker.pkg.github.com/foo-org/bar-mysql/bar-mysql:latest
    env:
    - name: MYSQL_ROOT_PASSWORD
      value: bazz
    ports:
    - containerPort: 3306
    readinessProbe:
      tcpSocket:
        port: 3306
      initialDelaySeconds: 5
    tty: true
  imagePullSecrets:
  - name: ci-gh-registry

Это работает в GKE, но я думаю, что это не имеет значения?

Есть идеи, почему и как это исправить?

1 Ответ

2 голосов
/ 14 января 2020

предоставляет хост как 127.0.0.1 или localhost вместо mysql контейнеров в модуле, взаимодействующих через localhost

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...