본문으로 건너뛰기

Rudel

요청별로 선택하는 WordPress 샌드박스용 오버레이 환경.

터미널
composer require rudel/rudel

최신 릴리스 v0.10.0 GPL-2.0-or-later WordPress 6.4+, PHP 8.2+

실제 사용

호스트 사이트에서 샌드박스를 만든 다음 WP-CLI 또는 HTTP 요청을 해당 샌드박스로 보냅니다.

샌드박스를 만들고 요청을 라우팅하세요

wp rudel create은 호스트 테이블을 새 접두사 아래에 복제하고, 테마를 샌드박스 디렉터리에 복사한 다음 샌드박스 ID를 출력합니다.

해당 ID를 RUDEL_ENVIRONMENT에 전달해 WP-CLI을 실행하거나, X-Rudel-Environment 헤더 또는 rudel_environment 쿠키에 담아 HTTP 요청을 보냅니다. PHP API으로도 동일한 샌드박스를 만들 수 있으며 수명 주기 메타데이터도 기록됩니다.

터미널
wp rudel create --name=alpha --theme=twentytwentyfour
RUDEL_ENVIRONMENT=alpha-1234 wp option get siteurl
curl -H 'X-Rudel-Environment: alpha-1234' http://localhost:8000/

샌드박스

개발, 테스트, AI 에이전트를 위한 폐기 가능한 오버레이 환경입니다.

요청별 선택

X-Rudel-Environment 헤더, rudel_environment 쿠키 또는 WP-CLI의 RUDEL_ENVIRONMENT로 요청을 샌드박스에 라우팅합니다. 인증 없이 샌드박스 ID만으로 선택합니다.

오버레이 런타임

활성화하면 wp-config.php에 부트스트랩 줄이 추가됩니다. 그러면 각 샌드박스에는 자체 접두사를 사용하는 복제된 테이블과 활성 테마 사본이 제공되며, WordPress 코어, 플러그인 파일, 업로드 파일은 공유 상태로 유지됩니다.

Git 워크트리

호스트의 git 바이너리가 없어도 PHP에 맞춘 기본 Git 복제, 푸시, 워크트리 작업 흐름을 사용할 수 있습니다.

스냅샷

샌드박스의 테이블과 관리되는 테마 파일을 복사하는 이름 있는 복구 지점입니다. WP-CLI 또는 PHP에서 만들고 복원하세요.

요청 격리

요청별 테이블 접두사, 테마 루트, 임시 디렉터리, 객체 캐시 키 솔트 및 이메일 차단을 제공합니다.

WP-CLI & PHP API

wp rudel 명령과 Rudel\Rudel 정적 메서드로 샌드박스를 만들고, 나열하고, 업데이트하고, 스냅샷을 생성하고, 복원하고, 삭제할 수 있습니다.

에이전트 사용 준비 완료

코딩 에이전트에 폐기 가능한 WordPress 사본을 제공하며, RUDEL_ENVIRONMENT로 범위를 제한한 WP-CLI과 발신 이메일 차단을 지원합니다.

Rudel를 사용하는 이유

한 번 설치해 여러 샌드박스 사용

Rudel은 멀티사이트나 두 번째 WordPress 설치 없이 일반 WordPress 설치 안에서 실행됩니다. 샌드박스를 지정하지 않은 모든 요청에는 호스트 사이트가 자체 데이터를 제공합니다.

테이블과 테마 하나를 복사

샌드박스는 사용자까지 포함한 호스트 테이블을 자체 접두사 아래에 복사하고, 활성 테마도 복사합니다. 하위 테마의 경우 상위 테마도 복사합니다. WordPress 코어, 플러그인 파일, 업로드 파일은 호스트에 그대로 있습니다.

만료되는 샌드박스

샌드박스에 소유자, 레이블, 용도 및 TTL(일수)을 지정하세요. 매시간 실행되는 WP-Cron 작업이 만료된 샌드박스를 삭제하고 보호됨으로 표시된 샌드박스는 건너뜁니다.

안심하고 미리보기

샌드박스 요청은 발신 이메일을 차단하고 차단된 메시지를 각각 기록합니다. wp-config.php에서 별도로 설정하지 않으면 객체 캐시 키 솔트는 샌드박스 ID에서 파생되므로 영구 캐시에서 호스트 키와 샌드박스 키가 분리됩니다.

비교 대상

Rudel은 이미 운영 중인 사이트 안에서 작동합니다. 다음 도구들은 인접한 요구 사항을 충족합니다.

Rudel와 다른 도구 비교
WordPress Multisite 잘하는 점하나의 코어 파일 집합으로 가상 사이트 네트워크를 실행하고 플러그인과 테마는 공유하며, 각 사이트별 데이터베이스 테이블과 업로드 디렉터리는 분리합니다. Rudel와의 차이점Rudel에는 멀티사이트가 필요하지 않습니다. 샌드박스는 기존 사이트의 테이블과 활성 테마를 복사하며, 헤더, 쿠키 또는 WP-CLI 환경 변수로 요청별 선택이 가능합니다.
wp-env 잘하는 점로컬 WordPress 사이트를 설정하고 Docker을 사용해 별도의 구성 없이 플러그인과 테마를 개발하고 테스트합니다. Rudel와의 차이점Rudel에는 두 번째 WordPress 설치가 필요하지 않습니다. 현재 운영 중인 사이트의 콘텐츠에서 샌드박스를 만들며, 테이블은 호스트와 동일한 MySQL 데이터베이스에 저장됩니다. 샌드박스에 별도의 PHP 런타임이나 데이터베이스 서버를 제공하지는 않습니다.
WordPress Playground 잘하는 점WordPress은 백엔드 없이 WebAssembly에서 클라이언트 측으로 실행됩니다. 브라우저 안에 격리되며 브라우저 외부에는 지속적인 부작용을 남기지 않습니다. Rudel와의 차이점Rudel은 실제 사이트 및 해당 MySQL 데이터베이스와 나란히 서버에서 실행됩니다. 샌드박스는 해당 사이트의 현재 콘텐츠에서 시작하며 WP-CLI와 모든 HTTP 클라이언트에서 접근할 수 있습니다.

질문과 답변

Rudel 문서의 간단한 답변.

플러그인을 설치하고, 자신의 사이트에서 샌드박스를 만든 다음 시작하기 안내에 따라 첫 요청을 샌드박스로 보내세요.