세 가지 방법 중 고르기
HELPER VPS에서는 서버를 만들 때 이미지를 고르는 것만으로 워드프레스 준비 단계가 크게 줄어요. 내 상황에 맞는 방법 하나를 고르면 돼요.
- WordPress 이미지: Ubuntu 24.04 위에 Nginx, MySQL, PHP와 워드프레스가 설치돼요. 브라우저에서 설치 화면만 마치면 끝이라 블로그 하나를 가장 빨리 여는 방법이에요.
- LEMP 이미지: Nginx, MySQL, PHP가 준비된 서버에 워드프레스를 직접 올려요. 사이트 여러 개를 한 서버에 두거나 폴더 구조와 설정을 직접 정하고 싶을 때 좋아요.
- Docker 이미지: 워드프레스와 데이터베이스를 컨테이너로 띄워요. 사이트를 다른 서버로 옮기거나 같은 환경을 여러 번 만들 때 편해요.
작은 블로그는 가장 작은 12GB 일반 서버로 시작해도 충분하고, 쇼핑몰이나 방문자가 많은 사이트는 디스크가 빠른 NVMe 고성능 서버가 페이지를 더 가볍게 열어요. 크기별 추천은 WordPress VPS 페이지에 있어요.
먼저 도메인 연결하기
도메인을 쓸 계획이라면 설치 전에 연결해 두면 HTTPS 인증서까지 한 번에 받아요. 도메인을 산 곳의 DNS 관리 화면에서 아래 두 기록을 만들어요.
- A 기록: 이름 @ (그리고 www), 값은 서버의 IPv4 주소
- AAAA 기록: 이름 @ (그리고 www), 값은 서버의 IPv6 주소
기록이 퍼지는 데는 보통 몇 분에서 몇 시간이 걸려요. 서버에서 ping -c 3 example.com을 실행해 내 서버 IP가 나오면 준비가 된 거예요. 아래 명령의 example.com은 내 도메인으로 바꿔서 입력해요.
방법 1. WordPress 이미지로 바로 시작
- 서버 만들기 화면에서 지역과 크기를 고르고 이미지 목록에서 WordPress를 선택해요.
- 서버가 실행 중으로 바뀌면 브라우저로
http://YOUR_SERVER_IP를 열어요. - 언어를 고르고 사이트 제목, 관리자 아이디, 비밀번호, 이메일을 정하면 설치가 끝나요.
http://YOUR_SERVER_IP/wp-admin으로 관리자 화면에 들어가요.
관리자 비밀번호는 길고 복잡하게 정하고, 아이디는 admin 대신 나만 아는 이름으로 정하면 로그인 시도에 든든해요. 도메인 연결과 HTTPS는 아래 HTTPS 단계를 그대로 따라 하면 돼요.
방법 2. LEMP 서버에 직접 설치
LEMP 이미지에는 Nginx, MySQL, PHP-FPM이 이미 설치돼 있어요. 워드프레스에 필요한 PHP 확장, 데이터베이스, 사이트 설정만 더하면 돼요. Ubuntu 24.04 기준이고, 다른 Ubuntu와 Debian에서도 같은 순서예요.
1단계. PHP 확장 설치
apt update
apt install -y php-mysql php-curl php-gd php-mbstring php-xml php-zip php-intl php-imagick
php -v
ls /run/php/php -v는 PHP 버전을, ls /run/php/는 PHP-FPM 소켓 이름을 보여 줘요. Ubuntu 24.04는 PHP 8.3이라 php8.3-fpm.sock, Debian 13은 PHP 8.4라 php8.4-fpm.sock이 보여요. 아래 Nginx 설정에 이 이름을 그대로 써요.
2단계. 데이터베이스와 사용자 만들기
root로 접속한 상태에서 mysql을 실행하면 비밀번호 없이 MySQL에 들어가요. 아래 네 줄로 워드프레스 전용 데이터베이스와 사용자를 만들어요. 비밀번호는 길게 바꿔서 넣고 메모해 둬요.
CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'change_this_long_password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;3단계. 워드프레스 내려받기
cd /var/www
curl -O https://wordpress.org/latest.tar.gz
tar xzf latest.tar.gz && rm latest.tar.gz
chown -R www-data:www-data /var/www/wordpress폴더 주인을 웹 서버 사용자(www-data)로 바꿔 두면 브라우저 설치 화면이 설정 파일을 직접 만들고, 플러그인과 테마도 관리자 화면에서 바로 설치해요.
4단계. Nginx 사이트 설정
server {
listen 80;
listen [::]:80;
server_name example.com www.example.com;
root /var/www/wordpress;
index index.php;
client_max_body_size 64m;
location / {
try_files $uri $uri/ /index.php?$args;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.3-fpm.sock;
}
location ~ /\.ht {
deny all;
}
}ln -s /etc/nginx/sites-available/wordpress /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginxnginx -t가 syntax is ok, test is successful을 보여 주면 설정이 맞는 거예요. 도메인이 아직 없다면 server_name에 _를 적고 기본 사이트(/etc/nginx/sites-enabled/default) 링크를 지우면 IP 주소로 열려요.
5단계. 브라우저에서 설치 마치기
http://example.com을 열면 설치 화면이 나와요. 데이터베이스 이름 wordpress, 사용자 wpuser, 2단계에서 정한 비밀번호, 호스트 localhost를 넣고 사이트 제목과 관리자 계정을 정하면 끝이에요.
방법 3. Docker Compose로 설치
Docker 이미지로 만든 서버나 Docker를 직접 설치한 서버라면 파일 하나로 워드프레스와 MariaDB를 함께 띄워요. 두 비밀번호는 길게 바꿔서 넣어요.
mkdir -p /opt/wordpress && cd /opt/wordpress
cat > compose.yaml <<'EOF'
services:
db:
image: mariadb:11
restart: unless-stopped
environment:
MARIADB_DATABASE: wordpress
MARIADB_USER: wpuser
MARIADB_PASSWORD: change_this_long_password
MARIADB_ROOT_PASSWORD: change_this_other_password
volumes:
- db:/var/lib/mysql
wordpress:
image: wordpress:latest
restart: unless-stopped
depends_on:
- db
ports:
- "80:80"
environment:
WORDPRESS_DB_HOST: db
WORDPRESS_DB_USER: wpuser
WORDPRESS_DB_PASSWORD: change_this_long_password
WORDPRESS_DB_NAME: wordpress
volumes:
- wp:/var/www/html
volumes:
db:
wp:
EOF
docker compose up -dhttp://YOUR_SERVER_IP를 열면 설치 화면이 나와요. 데이터베이스 정보는 파일에 이미 들어 있어서 사이트 제목과 관리자 계정만 정하면 돼요. 글과 업로드 파일은 wp 볼륨에, 데이터베이스는 db 볼륨에 남아서 컨테이너를 새 버전으로 바꿔도 그대로 유지돼요.
Docker로 올린 사이트에 HTTPS를 붙일 때는 앞에 리버스 프록시를 두는 방법이 깔끔해요. 화면에서 도메인만 넣으면 인증서까지 자동으로 붙여 주는 Coolify나 Dokploy 이미지를 쓰면 더 간단해요.
HTTPS 인증서 붙이기
WordPress 이미지와 LEMP 서버는 Certbot으로 Let's Encrypt 무료 인증서를 받아 Nginx에 바로 붙여요. 도메인이 서버 IP를 가리키고 있어야 해요.
apt install -y certbot python3-certbot-nginx
certbot --nginx -d example.com -d www.example.com이메일을 넣고 약관에 동의하면 인증서가 발급되고 Nginx 설정에 HTTPS가 더해져요. 인증서는 Certbot이 자동으로 갱신해요. 그다음 워드프레스 관리자 화면의 설정 > 일반에서 워드프레스 주소와 사이트 주소를 https로 바꿔요. 방화벽을 쓴다면 ufw allow 80,443/tcp로 두 포트를 열어 둬요.
설치 뒤에 해 두면 좋은 설정
- 고유주소: 설정 > 고유주소에서 글 이름 방식을 고르면 주소가 읽기 좋아져요. 위 Nginx 설정의 try_files 줄이 이 주소를 처리해요.
- 업로드 크기: 큰 이미지나 테마 파일을 올리려면 Nginx의
client_max_body_size와 함께/etc/php/8.3/fpm/php.ini의upload_max_filesize,post_max_size를 같은 크기로 올리고systemctl restart php8.3-fpm을 실행해요. - 메일 발송: 회원 가입, 비밀번호 찾기, 주문 알림 메일은 SMTP 플러그인으로 메일 발송 서비스의 587번이나 465번 포트에 연결해요. 방법은 메일 발송 가이드에 있어요.
- 업데이트: 워드프레스 본체, 플러그인, 테마는 관리자 화면에서, 서버는
apt update && apt upgrade -y로 정기적으로 최신으로 맞춰요. - 백업: 글과 데이터베이스는 다시 만들 수 없는 자산이에요. 서버를 만들 때 자동 백업을 켜 두거나 백업과 스냅샷 가이드의 방법으로 사본을 남겨 두세요.
처음부터 다시 설치하고 싶을 때는 서버 페이지의 재설치에서 WordPress 이미지를 다시 고르면 깨끗한 상태로 돌아가요. 디스크가 새로 설치되니 필요한 글은 도구 > 내보내기로 먼저 받아 두고, 순서는 재설치 가이드를 참고해요.
