우분투 서버
설치 분류

Docker compose로 워드프레스 편하게 설치하는 방법

컨텐츠 정보

본문



들어가며


Wordpress(워드프레스)는 현재 전세계에서 가장 많이 쓰이는 CMS입니다.


php, mysql, 웹서버로 구성됩니다.


SSL 인증서 설정, 자동갱신 등록, ffmpeg와 redis 따로 설치 등등..


하나하나 설치하는데 시간과 노력이 많이 필요합니다. 


한번에 설치하면 어떨까요?


바로 도커로 가능합니다.


소스는 깃허브(링크)에 올려뒀습니다.



준비사항


자신의 도메인이 우분투 20.04 서버 또는 센토스8 서버를 가리키게 해야 됩니다.


도메인 뿐만 아니라, www.도메인, port.도메인, pma.도메인까지 가리키게 하는게 중요합니다. (phpmyadmin, portainer 접속용)


그리고 방화벽은 80, 443 포트를 열어주세요.



오라클 클라우드 iptables 방화벽 초기화화기


오라클 클라우드의 경우 iptables가 강력하게 깔려있습니다.


그래서 다 열어주고 시작하는 것이 편합니다.


어짜피 오라클 클라우드 웹 패널에서 관리가 가능하니깐 문제없습니다.



sudo iptables -F
sudo iptables -X
sudo netfilter-persistent save
sudo netfilter-persistent reload


위 내용을 한줄씩 넣어주면 완벽합니다.



설치하기


(1) Ubuntu 20.04 LTS



sudo apt update -y && sudo apt upgrade -y && sudo apt install curl git -y && sudo apt autoremove -y


위 명령어로 현재 우분투 패키지의 상태를 최신화하고, curl과 git을 설치하고, 필요없는 패키지를 삭제합니다.



curl -o dc https://raw.githubusercontent.com/woosungchoi/docker-wordpress/master/dc && bash dc setup && rm -f dc


위 명령어 한줄이면 됩니다.



(2) CentOS 8



sudo yum -y update && sudo yum install -y curl git


위 명령어로 현재 센토스8 패키지의 상태를 최신화하고, curl과 git을 설치하고, 필요없는 패키지를 삭제합니다.



curl -o dcc https://raw.githubusercontent.com/woosungchoi/docker-wordpress/master/dcc && bash dcc setup && rm -f dcc


위 명령어 한줄이면 됩니다.



도메인 주소, 이메일 주소, root DB 비번, DB유저, DB 비번, DB이름 등을 물어보는데 원하는대로 설정 가능합니다.


그후 자동으로 설치됩니다.


SSL 인증서 발급 및 자동 갱신 cron 작업이 되어 있고, ffmpeg도 php에 붙여서 움직이는 GIF 파일도 MP4로 바꿀 수 있습니다.


또한 redis-server와 php-redis 확장기능도 설치되어있어, W3 Total Cache 플러그인에 redis캐시 기능을 사용할 수 있습니다.



로컬이나 SSL 없이 설치하기


(1) Ubuntu 20.04 LTS users



sudo apt update -y && sudo apt upgrade -y && sudo apt install curl git -y && sudo apt autoremove -y


위 명령을 넣은 후



curl -o dcl https://raw.githubusercontent.com/woosungchoi/docker-wordpress/master/dcl && bash dcl setup && rm -f dcl


위 명령을 넣고 설치하면 됩니다.



(2) For Centos 8 users



sudo yum -y update && sudo yum install -y curl git


위 명령을 넣고



curl -o dccl https://raw.githubusercontent.com/woosungchoi/docker-wordpress/master/dccl && bash dccl setup && rm -f dccl


위 명령을 넣은 후 설치하면 됩니다.



(3) For Windows 10 WSL2 Ubuntu 20.04 LTS users


WSL2 Ubuntu 20.04 LTS와 docker를 윈도우10에 설치합니다.


https://www.wsgvet.com/ubuntu/160 , https://www.wsgvet.com/ubuntu/180



sudo apt update -y && sudo apt upgrade -y && sudo apt autoremove -y


위 명령어를 넣은 후



curl -o dcwl https://raw.githubusercontent.com/woosungchoi/docker-wordpress/master/dcwl && bash dcwl setup && rm -f dcwl


위 명령어를 넣으면 됩니다.


처음에 Enter your domain (ex : mydomain.com or localhost) : 이렇게 나옵니다.


로컬에서 설치하기 때문에 localhost 를 넣으면 됩니다. 나머지는 원하는대로 설정할 수 있습니다.



워드프레스 설정하기


자신의 도메인 주소로 들어가면 워드프레스 설치화면이 나올 것입니다.


Database name : 직접 넣은 DB 명


Database username : 직접 넣은 DB 유저이름


Database Password : 직접 넣은 DB 비밀번호


Database Host : db


넣으면 됩니다.



Redis 캐시 설정하기


Redis 기능이 필요한 곳에


Host : redis


Port : 6379


위와 설정하면 Redis 캐시기능을 바로 쓸 수 있습니다.



인증메일 설정하기


구글 SMTP가 제일 편합니다.


https://wphowto.net/smtp-mailer-plugin-for-wordpress-1482


위 플러그인을 사용하면 됩니다.



phpmyadmin과 portainer


Phpmyadmin : https://pma.yourdomain.com


Portainer : https://port.yourdomain.com


위와 같은 형식의 주소로 들어가면 들어갈 수 있습니다.


portainer는 웹으로 도커 컨테이너를 관리할 수 있는 좋은 툴입니다.


Docker를 Web에서 관리하는 Portainer 설치방법


위 링크를 참조하세요.



도커 이미지 자동 업그레이드 등록


docker_upgrade.sh 파일에서 /your/path/to/wordpress/ 부분을 자신의 도커 폴더로 변경합니다.



chmod a+x docker_upgrade.sh


위와 같이 실행 가능하게 해줍니다.



echo "30 12 * * * /your/path/to/wordpress/docker_upgrade.sh >> /var/log/docker_upgrade_cron.log 2>&1" >> mycron && sudo crontab mycron && rm mycron


위 내용에서 /your/path/to/wordpress/ 부분을 자신의 도커 폴더로 변경 후 명령을 내려주면 crontab에 자동으로 들어갑니다.



기타 실행명령어


docker-compose.yml 파일이 있는 곳으로 가서



./dc start


위 명령어를 내리면 전체 도커 컨테이너가 시작됩니다.



./dc stop	


위 명령어를 내리면 전체 도커 컨테이너가 정지됩니다.



./dc update


위 명령어를 내리면 도커 이미지를 최신화하고, 재시작합니다.

관련자료

댓글 20개 / 2페이지

우성짱님의 댓글의 댓글

제가 해보니 방화벽을 열어주고 시작하는 것이 좋겠네요.

해당 내용 제일 위에 추가했습니다. 저도 테스트 중입니다.

고칼로리님의 댓글

Creating portainer  ... done
Creating db        ... done
Creating redis      ... done
Creating certbot  ... done
Creating php        ... done
Creating phpmyadmin ... done
Creating nginx      ... done
Done! 🎉
by Rafael Correa Gomes and Woosung Choi
-----
이렇게 설치가 문제없이 다 되었는데요.
워드프레스에 접근하려면 웹브라우저에서 url이나 서버ip로 이동하면 나타나는 것 아닌가요?
설치는 되었는데 웹브라우저로 접근이 안되어서 다른 방법을 더해야 하는지 궁금합니다.
참고로 설치 명령어 실행후 워드프레스 설정까지 하였고 [Redis 캐시 설정하기] 이후는 진행하지 않았습니다.

우성짱님의 댓글의 댓글

전혀 접근이 안되는 것인가요?

IP로 접속하면 바로 들어가져야 하는데요.. 흠...

만약에 도메인이 없다면 안됩니다.

도메인이 없다면 SSL 없는 것으로 설치해야해요.

고칼로리님의 댓글의 댓글

혹시 따로 nginx를 세팅할 필요는 없나요?
nginx 웹서버로 설정해서는 접속 테스트가 잘되는데 도커 컴포즈로 워드프레스 설치는 접속이 안되네요.

우성짱님의 댓글의 댓글

어떤 에러가 나는지 궁금하네요.

볼 수 없으니 왜 안되는지 알 수 없습니다.

도커에 Nginx 포함되어 있습니다.

고칼로리님의 댓글의 댓글

시도해보니 정답은 아니겠지만 업데이트 하고 리부트 후에 설치하니 접속이 되네요.
url을 치면 워드프레스 설치 화면이 정상적으로 나옵니다.
문제는 설치시 입력한 정보를 입력해도 [데이터베이스 연결을 구축하는 중 오류입니다]란 에러 메시지가 나옵니다.
강제로 ./wordpress/site/wordpress/wp-config.php 파일에 db 관련 정보를 수정해도 똑같은 오류 메시지가 나오네요.
아마 db와 연결하는데 문제가 있는 것 같은데 제 능력으로는 해결이 안되는데 혹시 방법을 아시는지요?

고칼로리님의 댓글의 댓글

오라클 클라우드 E1 맞습니다.
스왑설정 2기가로 한 후에 이 글에 있는대로 따라서 했습니다.
차이점이라면 패키지를 최신화 한 다음에 리부트 하고 설치 했습니다.
참고로 설정한 db와 아이디, 비번으로 pma에서 로그인 정상으로 됩니다.
몇번이나 다시 설치해봐도 똑같네요.

우성짱님의 댓글의 댓글

데이터베이스 연결을 구축하는 중 오류입니다 해결 방법

Database Host : db

위와 같이 처음 설치시 localhost가 아닌 db를 넣어주면 됩니다.
Total 34 / 1 Page
RSS
윈도우10 우분투에서 도커로 CMS 개발하기 댓글 4

설치 윈도우10에서 우분투와 도커를 설치할 수 있습니다.여러가지 활용방법이 있지만 그누보드, 라이믹스, 워드프레스, 고스트를 윈도우10 로컬에서 개발…

윈도우10 WSL2에 도커 설치하기

설치 도커를 윈도우에 설치할때 WSL2와도 연결되게 설치합니다.필수사항 : 윈도우10 프로페셔널, 엔터프라이즈 64비트윈도우10에 우분투 설치하는 방…

Keep Network의 ECDSA & Beacon nodes 구글 클라우드에 설치하기 댓글 2

설치 Keep Network의 test Keep token으로 ECDSA 및 Beacon nodes를 구글 클라우드에서 직접 구축할 수 있습니다.다른…

중국 황금방패 뚫는 VPN 3대장 직접 설치하기 댓글 97

설치 중국에서 해외 사이트에 접속할 때 황금방패로 막혀있는 경우가 많습니다.보통 유료로 VPN에 가입해서 사용하거나, 무료 VPN 서비스를 사용할텐데…

윈도우10에 우분투 설치하는 방법

설치 윈도우10에는 WSL(Windows Subsystem For Linux)이 있어서 우분투 센토스 등을 설치할 수 있습니다.방금 설치해보니 정말 …

Docker compose로 워드프레스 편하게 설치하는 방법 댓글 20

설치 들어가며Wordpress(워드프레스)는 현재 전세계에서 가장 많이 쓰이는 CMS입니다.php, mysql, 웹서버로 구성됩니다.SSL 인증서 설…

최근글


새댓글


알림 0