본문 바로가기

IT 엔지니어/CLOUD

Docker DB

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 접속하면 설치 화면 나옴

 

 

 

  1. 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
  1. 파일 내용 확인
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