2026년 06월 29일 Stories worth reading. Perspectives worth sharing.
Claude + n8n + WordPress 완전 자동 블로그 포스팅 가이드 (초보자용)
서버&개발

Claude + n8n + WordPress 완전 자동 블로그 포스팅 가이드 (초보자용)

fried007 6월 27, 2026 3 min read

이게 뭔가요?

당신이 “이 주제로 블로그 글 써줘”라고 말하면, 글이 자동으로 블로그에 올라옵니다. 사람이 손댈 일이 없어요.

전체 흐름

나 → Claude에게 요청
       ↓
   Claude가 리서치 + 글 작성
       ↓
   Cloudflare Tunnel로 n8n 호출
       ↓
   n8n이 WordPress에 API 요청
       ↓
   블로그에 자동 발행 ✅

필요한 것들

항목 설명 비용
OCI ARM VM Oracle Cloud 무료 서버 (2 OCPU / 12GB) 무료
n8n 자동화 워크플로우 툴 (오픈소스) 무료
WordPress 블로그 플랫폼 무료
Cloudflare 외부 접근용 터널 무료
Claude 리서치 및 글 작성 AI 유료 플랜 필요

💡 OCI(Oracle Cloud Infrastructure)는 ARM 기반 무료 서버를 영구 무료로 제공합니다.


1단계: OCI 서버 준비

Oracle Cloud에서 무료 계정을 만들고 ARM VM을 생성합니다.

📸 서버 생성 화면: Oracle Cloud 콘솔 → Compute → Instances → Create Instance에서 Shape를 VM.Standard.A1.Flex (ARM)으로 선택

# SSH 키 생성 (로컬 PC에서)
ssh-keygen -t ed25519 -f ~/.ssh/vm_key

# 서버 접속
ssh -i ~/.ssh/vm_key opc@[서버IP주소]

보안 그룹에서 포트 열기:

  • 5678 (n8n)
  • 8080 (WordPress)

2단계: n8n 설치

n8n은 시각적으로 자동화 워크플로우를 만드는 오픈소스 툴입니다. Podman(Docker 호환)으로 간단하게 설치합니다.

# n8n 폴더 생성
mkdir ~/n8n && cd ~/n8n

# docker-compose.yml 작성
cat > docker-compose.yml << 'EOF'
version: '3.8'
services:
  n8n:
    image: docker.n8n.io/n8nio/n8n
    ports:
      - "5678:5678"
    environment:
      - N8N_HOST=0.0.0.0
      - N8N_PORT=5678
      - N8N_PROTOCOL=http
      - N8N_SECURE_COOKIE=false
    volumes:
      - n8n_data:/home/node/.n8n
    restart: unless-stopped
volumes:
  n8n_data:
EOF

# n8n 실행
podman-compose up -d

📸 n8n 로그인 화면: 브라우저에서 http://서버IP:5678 접속 → 이메일/비밀번호로 첫 계정 생성


3단계: WordPress 설치

mkdir ~/wordpress && cd ~/wordpress

cat > docker-compose.yml << 'EOF'
version: '3.8'
services:
  wordpress:
    image: wordpress:latest
    ports:
      - "8080:80"
    environment:
      WORDPRESS_DB_HOST: db
      WORDPRESS_DB_USER: wp_user
      WORDPRESS_DB_PASSWORD: wp_password
      WORDPRESS_DB_NAME: wordpress
    volumes:
      - wp_data:/var/www/html
    depends_on:
      - db
    restart: unless-stopped
  db:
    image: mysql:8.0
    environment:
      MYSQL_DATABASE: wordpress
      MYSQL_USER: wp_user
      MYSQL_PASSWORD: wp_password
      MYSQL_ROOT_PASSWORD: root_password
    volumes:
      - db_data:/var/lib/mysql
    restart: unless-stopped
volumes:
  wp_data:
  db_data:
EOF

podman-compose up -d

4단계: Custom API 플러그인 설치 (핵심!)

WordPress는 기본적으로 포스팅 시 로그인 인증이 필요합니다. 내부 네트워크에서 인증 없이 글을 올릴 수 있도록 간단한 플러그인을 만듭니다.

# WordPress 컨테이너 내부에서 실행
podman exec -it wordpress-wordpress-1 bash

mkdir -p /var/www/html/wp-content/plugins/custom-api
cat > /var/www/html/wp-content/plugins/custom-api/custom-api.php < 'POST',
        'callback' => 'create_post_from_api',
        'permission_callback' => '__return_true',
    ]);
});

function create_post_from_api() {
     = wp_insert_post([
        'post_title'   => sanitize_text_field(->get_param('title')),
        'post_content' => wp_kses_post(->get_param('content')),
        'post_status'  => 'publish',
        'post_author'  => 1,
    ]);
    return ['id' => , 'status' => 'success'];
}
PHP
exit

WordPress 관리자(wp-admin) → 플러그인 → “Custom Post API” 활성화

⚠️ 보안: 이 플러그인은 내부 컨테이너 네트워크에서만 호출하도록 설계되었습니다. 외부 포트(8080)는 방화벽으로 막아두세요.


5단계: n8n 워크플로우 만들기

n8n 웹 UI에서 새 워크플로우를 생성하고 노드 2개를 연결합니다.

Webhook 노드 설정

HTTP Method: POST
Path: research-to-wordpress

HTTP Request 노드 설정

Method: POST
URL: http://[WordPress컨테이너IP]:80/wp-json/custom/v1/post
Content Type: JSON
Body:
{
  "title":   "{{ .body.title }}",
  "content": "{{ .body.content }}"
}

워크플로우 우측 상단 토글을 켜서 활성화하면 완료입니다.


6단계: Cloudflare Tunnel 설치

외부(Claude, 다른 서비스)에서 n8n에 접근할 수 있도록 퍼블릭 URL을 만듭니다.

# ARM64용 cloudflared 다운로드
curl -L https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-arm64 
  -o /usr/local/bin/cloudflared
chmod +x /usr/local/bin/cloudflared

# ⚠️ OCI Oracle Linux에서 SELinux 설정 필수!
sudo chcon -t bin_t /usr/local/bin/cloudflared

# systemd 서비스 등록
sudo tee /etc/systemd/system/cloudflared.service << 'EOF'
[Unit]
Description=Cloudflare Tunnel
After=network.target

[Service]
Type=simple
User=opc
ExecStart=/usr/local/bin/cloudflared tunnel --url http://localhost:5678 --no-autoupdate
Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable cloudflared
sudo systemctl start cloudflared

# 생성된 터널 URL 확인
sudo journalctl -u cloudflared -n 20 | grep trycloudflare

⚠️ SELinux 주의: OCI Oracle Linux에서 cloudflared를 /usr/local/bin에 설치하면 SELinux 컨텍스트가 user_home_t로 설정되어 systemd가 실행을 거부합니다. 반드시 sudo chcon -t bin_t /usr/local/bin/cloudflared를 실행해야 합니다.


실제로 사용하기

Claude Cowork에서 사용

나: "n8n + WordPress 자동화에 대해 리서치해서 블로그에 올려줘"

Claude: [웹 리서치 진행]
        [글 작성 완료]
        [n8n webhook 호출]
        → "포스팅 완료! ID: 34"

직접 API 테스트

curl -X POST https://[터널URL]/webhook/research-to-wordpress 
  -H "Content-Type: application/json" 
  -d '{"title": "글 제목", "content": "<p>글 내용</p>"}'

# 성공 응답
{"message": "Workflow was started"}

더 많은 활용 방법

📰 RSS 뉴스 자동 큐레이션

매일 아침 RSS 피드를 수집하고, Claude가 요약해서 WordPress에 자동 발행합니다.

n8n Schedule (매일 오전 7시)
  → RSS Feed 노드 (여러 뉴스 소스)
  → Claude AI 노드 (요약 + 한국어 번역)
  → WordPress 노드 (자동 발행)

🛒 WooCommerce 상품 설명 자동 생성

상품 DB에 새 항목이 추가되면 Claude가 상품 설명을 자동으로 작성합니다.

n8n Database Trigger
  → Claude AI 노드 (상품명 → 매력적인 설명)
  → HTTP Request (WooCommerce REST API 업데이트)

📱 신규 포스트 → SNS 자동 공유

블로그에 새 글이 올라오면 Twitter, LinkedIn에 자동으로 공유합니다.

n8n WordPress Trigger (새 포스트 감지)
  → Claude AI 노드 (SNS용 짧은 카피 작성)
  → Twitter 노드 + LinkedIn 노드 (동시 발행)

📧 주간 뉴스레터 자동화

n8n Schedule (매주 금요일)
  → WordPress 노드 (이번 주 글 목록)
  → Claude AI 노드 (주간 하이라이트 작성)
  → Gmail/Mailchimp 노드 (구독자 발송)

🏷️ 기존 글 자동 태그/분류

n8n Schedule
  → WordPress 노드 (태그 없는 글 목록)
  → Claude AI 노드 (내용 분석 → 태그 추천)
  → WordPress 노드 (태그 업데이트)

요약

단계 작업 소요 시간
1 OCI VM 생성 10분
2 n8n + WordPress 설치 10분
3 Custom API 플러그인 설치 5분
4 n8n 워크플로우 생성 5분
5 Cloudflare Tunnel 설정 5분
합계 약 35분

서버 비용: (OCI 무료 티어) | 월 운영 비용: (Claude 플랜 제외)

Leave a Comment