programing

Table Plus에서 로컬 도커 데이터베이스 인스턴스에 연결

skycolor 2023. 10. 4. 21:06
반응형

Table Plus에서 로컬 도커 데이터베이스 인스턴스에 연결

로컬 도커 워드프레스 인스턴스를 만들었고 SQL 클라이언트(내 경우에는 TablePlus)로 데이터베이스에 연결하려고 하는데 문제가 있습니다.

여기에 나와 있는 docker-compose.yml 파일로 docker 컨테이너를 만들었습니다.

version: '3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8028:80"
       - "8029:8029"

     volumes:
       - ./themes/travelmatic:/var/www/html/wp-content/themes/yadayada


     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       VIRTUAL_HOST: leasepilot.local

volumes:
    db_data:

저는 이 분야에서 워드프레스와 워드프레스의 조합을 시도해보았습니다.

SSH를 통해 연결할 수 있는 옵션도 있지만 그렇게 할 필요가 없다고 생각합니다.

1) 이런 유형의 문제를 디버깅하는 가장 좋은 방법은 무엇입니까?2) 학점이 뭐죠? ㅋㅋ

프라빈 답변에 추가해야 할 정보가 또 있습니다.로컬로 mysql을 이미 설치한 경우 컴퓨터/노트북에서 db 포트를 다음과 같이 설정합니다.

- "3306:3306" 

TablePlus가 로컬 mysql 인스턴스에 연결되므로 작동하지 않습니다.대신 Docker mysql을 다른 게시된 포트에 설정하고 TablePlus에서 액세스해야 합니다.

예를 들어, Docker 파일에 다음 포트를 설정합니다(공개 포트는 3356).

"3356:3306"

그런 다음 TablePlus에 동일한 포트를 설정합니다.

David이 그의 코멘트에서 제안한 것처럼, 당신은 docker-compose.yml에 포트 매핑을 추가해야 합니다.당신의 수정된 도커-컴포지트.yml은 다음과 같습니다.

version: '3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: somewordpress
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress
     ports:
       - "3306:3306"   
   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8028:80"
       - "8029:8029"

     volumes:
       - ./themes/travelmatic:/var/www/html/wp-content/themes/yadayada


     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress
       VIRTUAL_HOST: leasepilot.local

volumes:
    db_data:

그리고 환경 변수의 docker-compose.yml에 credit을 이미 제공했습니다.

언급URL : https://stackoverflow.com/questions/57411287/connecting-to-my-local-docker-database-instance-from-table-plus

반응형