gpt4 book ai didi

docker - github 操作 - 无法连接到 mysql

转载 作者:行者123 更新时间:2023-12-02 17:59:31 25 4
gpt4 key购买 nike

所以我正在尝试使用 github 操作设置 Laravel ci 服务器。而且,我使用 edbizarro/gitlab-ci-pipeline-php:7.3 作为我的容器,我使用官方的 mariadb docker 作为 mysql 服务。:

services:
mysql:
image: mariadb:10.3
env:
MYSQL_USER: root
MYSQL_PASSWORD: root
MYSQL_ROOT_PASSWORD: root
ports:
- 13306:3306
...

我正在尝试运行,运行 mysql 命令来导入数据库:
  - name: Setting Up DB
run: |
mysql -Tv -h mysql -P 13306 --protocol=tcp -u root -proot < ./storage/test.sql

这是我所做的几次尝试:
| host               | error message                                                          |
|--------------------|------------------------------------------------------------------------|
| mysql,"${DB_HOST}" | ERROR 2005 (HY000): Unknown MySQL server host 'mysql' (-2) |
| 0.0.0.0 | ERROR 2002 (HY000): Can't connect to MySQL server on '0.0.0.0' (115) |
| 127.0.0.1 | ERROR 2002 (HY000): Can't connect to MySQL server on '127.0.0.1' (115) |
| (without host) | ERROR 2002 (HY000): Can't connect to MySQL server on 'localhost' (99) |

不知道我还能在这里做什么......

这是我也尝试过的,都告诉我 选项不存在 :
 services:
mysql:
image: mariadb:10.3
options: --bind_address=""
env:
MYSQL_USER: root
MYSQL_PASSWORD: root
MYSQL_ROOT_PASSWORD: root
ports:
- 13306:3306

我尝试了以下选项:
  • --disable_bind_address
  • --bind-address=""

  • 以下是我从 github 得到的一些日志消息:(-Tv 没有提供任何有用的信息)
    docker.io/library/mariadb:10.3
    /usr/bin/docker create --name 607ae471e5844570b9e2fcf4f57ed78a_mariadb103_d94369 --label 2b5be7 --workdir /__w/laravel/laravel --network github_network_ab8a7ba8c1624f95bdc2784147b4b5e1 --network-alias mysql -p 13306:3306 -e "MYSQL_USER=root" -e "MYSQL_PASSWORD=root" -e "MYSQL_ROOT_PASSWORD=root" -e "HOME=/github/home" -v "/home/runner/work":"/__w" -v "/home/runner/runners/2.157.3/externals":"/__e":ro -v "/home/runner/work/_temp":"/__w/_temp" -v "/home/runner/work/_actions":"/__w/_actions" -v "/opt/hostedtoolcache":"/__t" -v "/home/runner/work/_temp/_github_home":"/github/home" -v "/home/runner/work/_temp/_github_workflow":"/github/workflow" mariadb:10.3
    c3b10a5c4799a671f55c2f2b7a33803abd9228830be5e8821b51f10a2b2951b3
    /usr/bin/docker start c3b10a5c4799a671f55c2f2b7a33803abd9228830be5e8821b51f10a2b2951b3
    c3b10a5c4799a671f55c2f2b7a33803abd9228830be5e8821b51f10a2b2951b3
    /usr/bin/docker ps --all --filter id=c3b10a5c4799a671f55c2f2b7a33803abd9228830be5e8821b51f10a2b2951b3 --filter status=running --no-trunc --format "{{.ID}} {{.Status}}"
    c3b10a5c4799a671f55c2f2b7a33803abd9228830be5e8821b51f10a2b2951b3 Up Less than a second
    /usr/bin/docker port c3b10a5c4799a671f55c2f2b7a33803abd9228830be5e8821b51f10a2b2951b3
    3306/tcp -> 0.0.0.0:13306

    最佳答案

    也许试试这样:

     mysql: 
    image: mariadb:10.3
    env:
    MYSQL_ROOT_PASSWORD: root
    ports:
    - 3306:3306
    options: --health-cmd="mysqladmin ping" --health-interval=10s --health-timeout=5s --health-retries=3

    在连接之前有一个健康检查以确保服务是健康的

    关于docker - github 操作 - 无法连接到 mysql,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57792224/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com