Vxero Neo
Vxero Neo는 SSH 기반 CLI로 VPS에 Docker 앱을 배포합니다. Docker·Caddy 설치와 HTTPS 자동 SSL, 제로 다운타임 스왑 제공—에이전트 없이.
Vxero Neo란?
Vxero Neo (Neo)는 VPS에 Docker 애플리케이션을 배포하는 SSH 기반 명령줄 도구입니다. SSH로 서버에 연결해 Docker와 Caddy를 설정하고, 자동 SSL을 통해 HTTPS로 앱을 배포합니다—에이전트 설치나 별도 제어 평면 없이.
Neo는 로컬 개발부터 스테이징, 프로덕션까지 애플리케이션 라이프사이클 단계를 관리합니다. 로컬 프로젝트 설정(docker-compose.yml, .env, .neo.yml 포함)을 읽어 이미지 빌드·SSH 전송, 헬스 체크, 제로 다운타임 트래픽 스왑을 수행합니다.
주요 기능
- SSH 전용 배포 플로우 (에이전트·대시보드 없음): Neo는 로컬 머신에서 실행되며 SSH로 VPS에 연결합니다. 런타임용 Docker/Caddy 외 추가 서버 측 도구 불필요.
- 자동 서버 초기화 (Docker + Caddy): 배포 중 대상 서버에 Docker와 Caddy를 설정해 컨테이너가 실행되고 HTTPS 트래픽을 받을 수 있게 합니다.
- Compose/설정에서 라이브 스위치로: 로컬 설정 읽기, 이미지 빌드, SSH 전송 후 헬스 체크 완료 시 트래픽 스왑; 이전 컨테이너는 스위치까지 계속 실행.
- 즉시 HTTPS 도메인 및 대체 인증서 옵션:
--temp으로 sslip.io (DNS 불필요) 사용. 실제 도메인의 경우 DNS 설정 후 Caddy를 통한 Let’s Encrypt, 또는--cert·--key로 자체 인증서 사용. - 설정 생성 및 환경 관리:
neo config generate가 docker-compose.yml 스캔 후 앱 서비스, 사이드카, 워커, 환경 변수, 볼륨 감지해 .neo.yml 자동 생성.neo env·neo sync등으로 환경/상태 동기화. - 블루-그린 스타일 제로 다운타임 배포: 새 컨테이너 시작, 헬스 체크 대기 후 트래픽 스왑; 이전 버전은 컷오버까지 사용 가능.
- 워커, 사이드카, 영속 볼륨: .neo.yml에 백그라운드 워커·사이드카 정의로 메인 앱과 함께 공유 볼륨·환경 변수로 배포. .neo.yml에 볼륨 선언으로 재배포 시 데이터 유지.
- 멀티 서버 및 환경별 설정:
--to staging같은 플래그로 스테이징·프로덕션 배포; 각 환경별 도메인, 환경 변수, SSL 설정 가능.
Vxero Neo 사용법
- 프로젝트 준비: 앱이
docker-compose.yml(선택.env)로 설명되도록 합니다. - Neo 배포 설정 생성: 프로젝트 디렉터리에서
neo config generate실행. docker-compose.yml 스캔 후 앱, 워커/사이드카 (정의/감지 시), 환경 변수, 볼륨 포함 .neo.yml 작성. - 로컬 개발 (선택 지원):
neo dev로 docker-compose를 .neo.yml 환경 로딩과 함께 래핑. - SSH 배포:
neo deploy로 VPS 대상 실행. Dockerfile (compose 유도 설정) 기반 이미지 빌드, SSH 전송, 헬스 체크·트래픽 스왑. - HTTPS 활성화:
neo domain --temp으로 sslip.io 기반 즉시 HTTPS URL, 또는 DNS 설정 후 Let's Encrypt 자동 SSL,--cert/--key로 자체 인증서 사용.
사용 사례
- 단일 VM Docker 앱 배포: VPS당 하나의 컨테이너화된 앱 (예: 웹 서비스) 배포, 클러스터 오케스트레이터 대신 SSH 자동화 원할 때.
- 공유 설정 스테이징 → 프로덕션: .neo.yml 생성·환경 로딩으로 환경 간 동일 설정 사용, 스테이징 배포 후 다른 도메인/SSL로 프로덕션 승격.
- 사이드카·백그라운드 워커 앱: .neo.yml에 정의된 워커·사이드카 컨테이너와 메인 앱 동시 배포, 공유 환경 변수·볼륨 포함.
- DNS 변경 없이 빠른 HTTPS:
neo domain --temp으로 sslip.io 즉시 HTTPS URL 테스트, DNS 준비 시 실제 도메인으로 전환. - 소규모 팀 제로 다운타임 릴리스: 헬스 체크와 블루-그린 업데이트로 새 컨테이너 준비까지 이전 버전 유지.
FAQ
-
Neo가 서버에 에이전트를 설치하나요? 아니요. Neo는 로컬 머신에서 실행되며 SSH로 VPS에 연결합니다. 서버에는 앱 런타임용 Docker와 Caddy만 설정됩니다.
-
이미 docker-compose를 사용 중인데 Neo로 어떻게 전환하나요? 프로젝트 디렉터리에서
neo config generate를 실행하세요. Neo가docker-compose.yml을 스캔해.neo.yml을 자동 생성한 후neo deploy로 앱을 배포할 수 있습니다. -
어떤 클라우드 제공자를 지원하나요? Neo는 DigitalOcean, Hetzner, Linode, Vultr, AWS EC2, GCP, Azure 등 SSH 액세스가 가능한 모든 VPS에 배포할 수 있습니다. Neo는 단일 VM에 배포하며 Kubernetes나 Docker Swarm 같은 멀티 노드 클러스터 오케스트레이터가 아닙니다.
-
HTTPS는 어떻게 작동하나요? Neo는 sslip.io를 통한 즉시 HTTPS를 위해
neo domain --temp를 지원하며, DNS 설정 후 Let’s Encrypt 자동 SSL을 위해neo domain app example.com을, 자체 인증서를 위해--cert/--key를 사용할 수 있습니다. -
Neo가 백그라운드 워커와 데이터베이스를 실행할 수 있나요?
.neo.yml에 워커를 선언하면 동일한 이미지, 환경 변수, 볼륨으로 별도 컨테이너로 배포됩니다. 데이터베이스는 소규모 프로젝트에서 Docker sidecar/service로 실행 가능하며, 실제 사용자 프로덕션에는 관리형 데이터베이스를 권장합니다.
대안
- 수동 Docker + Caddy 배포 스크립트: 완전한 제어를 원하고 자체 배포 자동화가 있다면 이미지를 빌드·전송하고 컨테이너를 실행하며 Caddy/SSL을 직접 관리할 수 있습니다. Neo의 단일 명령 워크플로보다 설정 노력이 더 듭니다.
- Docker Swarm 또는 Kubernetes: 멀티 노드 배포를 위한 클러스터 오케스트레이터입니다. Neo와 달리 클러스터 전체 오케스트레이션을 대상으로 하며 단일 SSH VPS가 아닙니다.
- 기타 VPS 중심 CI/CD 파이프라인: 일반 CI/CD 도구로 서버에 SSH 접속해 이미지를 빌드하고 컨테이너를 재시작할 수 있습니다. Neo 대비 설정 생성, 제로 다운타임 스위칭 로직, HTTPS 통합을 직접 처리해야 합니다.
- 관리형 컨테이너 플랫폼: 라우팅과 TLS를 관리해 인프라 단계를 줄입니다. 보통 Neo의 SSH 우선 “에이전트/제어 평면 없음” 배포 모델을 포기합니다.
대안
Falconer
Falconer는 고속 팀을 위한 자체 업데이트 지식 플랫폼으로, 내부 문서와 코드 맥락을 한곳에서 작성·공유·찾아보세요.
OpenFlags
OpenFlags는 오픈소스 셀프호스팅 피처 플래그 시스템으로, 앱 SDK에서 로컬 평가와 REST 제어 플레인을 통해 안전한 점진적 배포를 지원합니다.
Rectify
Rectify는 SaaS 운영을 위한 올인원 플랫폼으로 모니터링·분석·지원·로드맵·체인지로그·에이전트 관리를 한 시각적 워크스페이스에서 대화로 제어합니다.
GitBoard
GitBoard는 GitHub Projects용 네이티브 macOS 메뉴바 앱으로 칸반 보드 보기, 상태 필터링, 이슈 검색, 워크플로우에서 생성/할당을 지원합니다.
Studio CLI
터미널에서 Studio CLI로 WordPress Studio 기능을 제어하세요. 로컬 사이트 관리, WordPress.com 프리뷰 생성/갱신/삭제, 인증 지원.
Polsia
Polsia는 자율형 AI로 매일 계획·코딩·마케팅을 실행하며, 사용자는 잠자는 동안 수동 작업 부담을 줄이는 데 도움을 줍니다.