Я пытаюсь подключиться к базе данных в моем конвейере битбакета и использовать определение службы, как описано в документы, но получаю следующую ошибку:
+ 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")
Вот мой 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.
Вы забыли сообщить своему сервису, что на самом деле нужно использовать сервис 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'