programing

github 작업 - mysql에 연결할 수 없습니다.

nicescript 2022. 9. 30. 12:18
반응형

github 작업 - mysql에 연결할 수 없습니다.

그래서 github 액션으로 larabel ci 서버를 설정하려고 합니다.그리고 나는 사용하고 있다.edbizarro/gitlab-ci-pipeline-php:7.3mysql 서비스로 공식 mariadb 도커를 사용합니다.

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

db를 Import하기 위해 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 

옵션을 사용하여 시도했습니다.

  1. --disable_bind_address
  2. --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

연결 전에 서비스가 정상인지 확인하기 위한 상태 점검이 있습니다.

언급URL : https://stackoverflow.com/questions/57792224/github-actions-cannot-connect-to-mysql

반응형