1. 네트워크 생성 (컨테이너 간 통신 위해)
docker network create wp-net
2. DB 컨테이너 생성 (MariaDB)
docker run -d \\
--name ***wp-db*** \\
--network wp-net \\
-e MYSQL_ROOT_PASSWORD=rootpw \\
-e MYSQL_USER=wpuser \\
-e MYSQL_PASSWORD=wppw \\
-e MYSQL_DATABASE=wordpress \\
-v wp-db-data:/var/lib/mysql \\
mariadb:latest
이 컨테이너는 wordpress라는 데이터베이스를 미리 생성하고,
wpuser / wppw로 접속 가능하게 설정함.
3. WordPress 컨테이너 생성 (Apache + PHP 내장)
docker run -d \\
--name wordpress \\
--network wp-net \\
-e WORDPRESS_DB_HOST=**wp-db**:3306 \\
-e WORDPRESS_DB_USER=wpuser \\
-e WORDPRESS_DB_PASSWORD=wppw \\
-e WORDPRESS_DB_NAME=wordpress \\
-p 8080:80 \\
-v wp-html:/var/www/html \\
wordpress:latest
브라우저에서 http://localhost:8080 접속하면 설치 화면 나옴
- docker compose.yml
✅ docker-compose.yml 예제
version: '3.8'
services:
db:
image: mariadb:latest
container_name: mydb
restart: always
environment:
MYSQL_ROOT_PASSWORD: rootpw
MYSQL_DATABASE: wpdb
MYSQL_USER: wpuser
MYSQL_PASSWORD: wppw
volumes:
- db_data:/var/lib/mysql
networks:
- wpnet
wordpress:
image: wordpress:latest
container_name: mywordpress
restart: always
ports:
- "8080:80"
environment:
WORDPRESS_DB_HOST: mydb:3306
WORDPRESS_DB_NAME: wpdb
WORDPRESS_DB_USER: wpuser
WORDPRESS_DB_PASSWORD: wppw
volumes:
- wp_html:/var/www/html
networks:
- wpnet
volumes:
db_data:
wp_html:
networks:
wpnet:
파일 저장 후 실행
docker-compose up -d
docker exec -it mynginx bash
- 파일 내용 확인
docker inspect mynginx | less
ESC -> :/[찾을 내용]
docker inspect mynginx | grep -A 10 '"Mounts"' | grep -E '"Source"|"Destination"'
docker inspect mynginx | jq '.[0].Mounts'
docker inspect mynginx | awk '/Mounts/,/]/'
awk '/시작/,/끝/'
'IT 엔지니어 > CLOUD' 카테고리의 다른 글
Docker Network (0) | 2025.05.11 |
---|---|
Docker network (0) | 2025.05.10 |
Docker volume/bind mount (0) | 2025.05.07 |
Docker (0) | 2025.05.06 |
Docker 1 (0) | 2025.05.05 |