본문 바로가기

실무로부터/Prj Solena

[설정] docker로 wordpress + db 한꺼번에 설치

[목적]

1- docker compose를 이용하여 wordPress와 DB를 함께 설치 및 설정한다.  

2- 개인 도메인으로 wordpress에 접속할 수 있게 한다. 

 

 

👜 필요한 것

- dokcer가 설치 된 linux 컴퓨터  ( 또는 가상머신 )

docker 설치 참고 : docker설치하기

 

 

🥽 wordpress 설치 

1) 디렉토리 생성 후 이동

$ mkdir my_wordpress
$ cd my_wordpress

 

2) docker-compose.yml 파일 생성

$ echo '' > 'docker-compose.yml'
$ vim 'docker-compose.yml'

*참고 : vim 'docker-compose.yml' 으로 실행되지 않는 경우, 아래의 명령어로 실행한다

$ sudo vi 'docker-compose.yml'

 

3) docker-compose 작성 

version: '3.3'

services:
  db: #컨테이너 이름
    container_name: wp-db
    image: mariadb:lts-jammy
    command: '--default-authentication-plugin=mysql_native_password'
    volumes: #마운트 할 볼륨 설정
      - ./db_data:/var/lib/mysql
    restart: always
    environment: #mysql의 환경변수
      - MYSQL_ROOT_PASSWORD= 123qwe #Root비밀번호
      - MYSQL_DATABASE= wordpress #데이터베이스 이름
      - MYSQL_USER= wordpressId #데이터베이스 접근할 아이디
      - MYSQL_PASSWORD= 123qwe #데이터베이스 접근할 아이디의 비밀번호
    expose:
      - 3306
      - 33060
      
  wordpress: #컨테이너 이름
    container_name: wp
    image: wordpress:latest
    volumes:
      - ./wp_data:/var/www/html
    ports: #바인딩할 포트
      - 80:80
      - 443:443
    restart: always
    environment:
      - WORDPRESS_DB_HOST= db #db컨테이너 이름
      - WORDPRESS_DB_NAME= wordpress #데이터베이스 이름
      - WORDPRESS_DB_USER= wordpressId #데이터베이스 접근할 아이디
      - WORDPRESS_DB_PASSWORD= 123qwe #데이터베이스 접근할 아이디의 비밀번호
      
volumes:
  db_data:
  wp_data:

저장 후 닫기

:wq!

 

4) docker-compose 실행

#로그 안 보이게 실행
$ docker-compose up -d

# 로그 보이게 실행
$ docker-compose up

*참고 : docker-compose 실행중단

$ docker-compose down

 

 

5) 실행확인

$ docker compose ps

 

6) 브라우저에서 확인 및 설치

브라우저에서 wordpress가 설치된 컴퓨터의 ip로 이동한다.

만약 아래의 화면이 나오지 않는다면, docker compose의 설정이 잘못 된 것이므로 3에서 설정한 docker compose파일을 재확인 해야한다.  

4

 

7. 제출하고 설치가 완료되면 로그인하여 사용할 수 있다