docker에서 cakephp 환경을 준비 할 때 mysql에서 관련으로 발생한 오류
오류 1
[2002] php_network_getaddresses: getaddrinfo failed: Name or service not known
원인 host 이름과 docker-compose.yml에 지정된 서비스 이름이 다릅니다.
이것은 조사해 보면 어플리케이션측에서 지정한 host명과 docker-compose.yml로 지정한 service명이 다른 경우에 일어나는 에러인 것 같다.
docker-compose.yml
version: '3'
services:
db:
image: mysql:8.0
restart: always
container_name: cake-db
environment:
MYSQL_ROOT_PASSWORD: root
MYSQL_DATABASE: master
MYSQL_USER: pass
MYSQL_PASSWORD: pass
.env
DB_HOST=db
MYSQL_ROOT_PASSWORD:root
DB_DATABASE=master
DB_USERNAME=pass
DB_PASSWORD=pass
service 이름과 DB_HOST를 함께 사용하면 다시 수정했습니다.
오류 2
[2054] The server requested authentication method unknown to the client
이번에는 인증 시스템에서 어쨌든 오류가 발생하고 있습니다.
원인 mysql8.0에서 기본 인증 방법이 변경되었습니다.
이번에는 5.*계가 아닌 8.0의 이미지를 지정하고 있어 8.0에서 디폴트의 인증 방식이 종래의
mysql_native_password
로부터 caching_sha2_password
합니다.db 서비스에
docker-compose.yml
command: --default-authentication-plugin=mysql_native_password
추가
오류가 해결되었습니다.
참고:
htps : //에서 v. mysql. 이 m/도 c/레 f만/8. HTML
htps : // 메비에. 인후/2020/08/17/포 st-16830/
htps : // 코 m / 노래 3 차 / ms / 47b393 5887530573118
Reference
이 문제에 관하여(docker에서 cakephp 환경을 준비 할 때 mysql에서 관련으로 발생한 오류), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ryoutaka/items/ff18c001ccd358342967텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)