컨테이너는 데이터와 프로그램을 독립 실행할 수 있는 공간

그래서 컨테이너끼리 통신하려면 네트워크 구축 필요

→ 네트워크 구축 후 mysql과 wordpress 컨테이너 배포

docker network create wordpress000net1

docker run --name mysql000ex11 -dit --net=wordpress000net1 -e MYSQL_ROOT_PASSWORD=myrootpass -e MYSQL_DATABASE=wordpress000db -e MYSQL_USER=wordpress000kun -e MYSQL_PASSWORD=wkunpass mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci --default-authentication-plugin=mysql_native_password

docker run --name wordpress000ex12 -dit --net=wordpress000net1 -p 8085:80 -e WORDPRESS_DB_HOST=mysql000ex11 -e WORDPRESS_DB_NAME=wordpress000db -e WORDPRESS_DB_USER=wordpress000kun -e WORDPRESS_DB_PASSWORD=wkunpass wordpress

 

그리곤 브라우저를 통해 localhost:8085로 접속했으나 에러 발생

에러 메시지 "Error establishing a database connection"

 

컨테이너 상태 봤더니 mysql 상태가 exited

 

mysql 컨테이너 로그 확인(docker logs mysql000ex11)했더니 인식 안되는 환경변수(default-authentication-plugin)가 있음

 

그래서 걔 빼고 입력해봄

docker network create wordpress000net1

docker run --name mysql000ex11 -dit --net=wordpress000net1 -e MYSQL_ROOT_PASSWORD=myrootpass -e MYSQL_DATABASE=wordpress000db -e MYSQL_USER=wordpress000kun -e MYSQL_PASSWORD=wkunpass mysql --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci

docker run --name wordpress000ex12 -dit --net=wordpress000net1 -p 8085:80 -e WORDPRESS_DB_HOST=mysql000ex11 -e WORDPRESS_DB_NAME=wordpress000db -e WORDPRESS_DB_USER=wordpress000kun -e WORDPRESS_DB_PASSWORD=wkunpass wordpress

 

브라우저에서 워드프레스 정상 출력 확인

+ Recent posts