그림과 실습으로 배우는 도커 & 쿠버네티스 (위키북스)
워드프레스 : 웹 사이트를 만들기 위한 소프트웨어, 서버에 설치해서 사용.
워드프레스는 워드프레스 컨테이너와 MySQL 컨테이너로 구성된다.
워드프레스는 블로그 생성 도구와 같은 것으로,
웹 사이트 작성자가 작성한 내용을 DB에 저장하고, 웹 사이트 열람자의 요청에 따라 웹 페이지를 보여준다.
프로그램이 MySQL에 저장된 데이터를 읽고 쓸 수 있어야 하기 때문에 두 컨테이너가 연결돼 있어야 한다.
가상 네트워크를 만들고 이 네트워크에 두 개의 컨테이너를 소속시켜서 두 컨테이너를 연결한다.
도커 네트워크 생성하는 커맨드
docker network create 네트워크_이름
도커 네트워크를 생성하는 커맨드
옵션이나 인자를 추가하는 경우는 거의 없다.
도커 네트워크 삭제하는 커맨드
docker network rm 네트워크_이름
도커 네트워크를 삭제하는 커맨드
마찬가지로 옵션이나 인자를 추가하는 경우는 거의 없다.
MySQL 컨테이너 실행 시에 필요한 옵션과 인자
docker run --name 컨테이너_이름 -dit --net=네트워크_이름 -e MYSQL_ROOT_PASSWORD=MySQL_루트_패스워드 -e MYSQL_DATABASE=데이터베이스_이름 -e MYSQL_USER=MySQL_사용자이름 -e MYSQL_PASSWORD=MySQL_패스워드 mysql --character-set-server=문자_인코딩 --collation-server=정렬_순서 --default-authentication-plugin=인증_방식
💡 참고
\ : 개행을 쓰면 터미널에서 깔끔하게 볼 수 있음!
사용된 옵션
--net : 컨테이너를 연결할 도커 네트워크
나머지는 모두 -e 옵션 > *환경변수를 설정하기 위해 사용한다.
(* 환경변수란 운영체제에서 다양한 설정값을 저장하는 장소를 가리킨다. 컨테이너 설정값을 이 환경변수를 통해 전달하는 경우가 많다.
컨테이너의 종류에 따라 사용할 환경변수가 달라진다.
항목 | 옵션 |
네트워크 이름 | --net |
MySQL 컨테이너 이름 | --name |
실행 옵션 | -dit |
MySQL 루트 패스워드 | -e MYSQL_ROOT_PASSWORD |
MySQL 데이터베이스 이름 | -e MYSQL_DATABASE |
MySQL 사용자 이름 | -e MYSQL_USER |
MySQL 패스워드 | -e MYSQL_PASSWORD |
- 패스워드는 루트 패스워드와 일반 사용자 패스워드 설정
사용된 인자
항목 | 인자 | 의미 |
문자 인코딩 | --character-set-server= | 문자 인코딩으로 UTF8을 사용 |
정렬 순서 | --collation-server= | 정렬 순서로 UTF8을 따름 |
인증 방식 | --default-authentication-plugin= | 인증 방식을 예전방식으로 변경 |
워드프레스 컨테이너 실행 시에 필요한 옵션과 인자
docker run --name 컨테이너_이름 -dit --net=네트워크_이름 -p 포트_설정 -e WORDPRESS_DB_HOST=데이터베이스_컨테이너_이름 -e WORDPRESS_DB_NAME=데이터베이스_이름 -e WORDPRESS_DB_USER=데이터베이스_사용자_이름 -e WORDPRESS_DB_PASSWORD=데이터베이스_패스워드 wordpress
사용된 옵션
항목 | 옵션 |
네트워크 이름 | --net |
워드프레스 컨테이너 이름 | --name |
실행 옵션 | -dit |
포트 번호 설정 | -p |
데이터베이스 컨테이너 이름 | -e WORDPRESS_DB_HOST |
데이터베이스 이름 | -e WORDPRESS_DB_NAME |
데이터베이스 사용자 이름 | -e WORDPRESS_DB_USER |
데이터베이스 패스워드 | -e WORDPRESS_DB_PASSWORD |
실습 화면
️💡도커 컨테이너 로그 보는법
> docker logs mysql000ex11
- default-authentication-plugin 옵션은 MySQL 9.1.0 버전에서는 더 이상 사용되지 않는다.
컨테이너를 생성한 후에는 뒷정리 하는 습관들이기!
문제 1 : MySQL 컨테이너의 옵션 값 채워넣기
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
문제 2 : 워드프레스 컨테이너의 옵션 값 채워넣기
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
볼륨 추가하기
'책곡책곡 > 그림과 실습으로 배우는 도커 & 쿠버네티스' 카테고리의 다른 글
CHAPTER 4-2. 컨테이너의 생성, 삭제, 실행, 정지 (0) | 2024.11.10 |
---|---|
CHAPTER 4-1. 컨테이너의 기본적인 사용 방법 (0) | 2024.11.09 |
CHAPTER 2-2. 도커 허브와 이미지, 그리고 컨테이너 (5) | 2024.10.12 |
CHAPTER 2-1. 도커의 동작 원리 (2) | 2024.10.12 |
CHAPTER 1. 도커란 무엇인가? (0) | 2024.10.06 |