Не удается подключиться к MySQL на конвейерах битбакета (111 «Отказано в подключении»)

Я пытаюсь подключиться к базе данных в моем конвейере битбакета и использовать определение службы, как описано в документы, но получаю следующую ошибку:

+ mysql -h 127.0.0.1 -u root -ptest_user_password -e "SHOW DATABASES"
ERROR 2003 (HY000): Can't connect to MySQL server on '127.0.0.1' (111 "Connection refused")

Не удается подключиться к MySQL на конвейерах битбакета (111 «Отказано в подключении»)

Вот мой bitbucket-pipelines.yaml:

image: debian:stretch

pipelines:
  pull-requests:
    '*':
      - step:
          script:
            - apt-get update && apt-get install -y mysql-client
            - mysql -h 127.0.0.1 -u root -ptest_user_password -e "SHOW DATABASES"
definitions:
  services:
    mysql:
      image: mysql:5.7
      variables:
        MYSQL_DATABASE: 'pipelines'
        MYSQL_ROOT_PASSWORD: 'test_user_password'

Любые идеи, что я делаю неправильно?

🤔 А знаете ли вы, что...
Синтаксис SQL (Structured Query Language) используется для взаимодействия с MySQL.


1 111
1

Ответ:

Решено

Вы забыли сообщить своему сервису, что на самом деле нужно использовать сервис mysql. Попробуйте этот конфиг:

image: debian:stretch

pipelines:
  pull-requests:
    '*':
      - step:
          script:
            - apt-get update && apt-get install -y mysql-client
            - mysql -h 127.0.0.1 -u root -ptest_user_password -e "SHOW DATABASES"
          services:
            - mysql
definitions:
  services:
    mysql:
      image: mysql:5.7
      variables:
        MYSQL_DATABASE: 'pipelines'
        MYSQL_ROOT_PASSWORD: 'test_user_password'