Docker compose로 워드프레스 편하게 설치하는 방법
컨텐츠 정보
- 30,984 조회
- 49 댓글
- 0 추천
- 목록
본문
들어가며
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
위 명령어를 내리면 도커 이미지를 최신화하고, 재시작합니다.
-
등록일 2020.10.04
-
등록일 2020.10.04
-
등록일 2020.09.27
-
등록일 2020.09.27중국 황금방패 뚫는 VPN 3대장 직접 설치하기댓글 215
관련자료
-
서명우성짱의 NAS를 운영하고 있습니다.
저의 즐거움이 여러분의 즐거움이면 좋겠습니다.
-
링크
궁그미님의 댓글
Creating network "wordpress_default" with the default driver
ERROR: Failed to program FILTER chain: iptables failed: iptables --wait -I FORWA RD -o br-f065cbe8b898 -j DOCKER: iptables v1.8.4 (legacy): Couldn't load target `DOCKER':No such file or directory
요청쟁이님의 댓글
이 글보고 여기까지 찾아 왔는데 혹시 오라클 A1 서버에서 링크의 글 처럼 세팅 할 수 있도록 초보가 이해할 수준으로 가이드 부탁드려도 될까요?