지식 베이스

Zinnector®를 사용한 배포: 연결, 확인, 푸시

로컬 프로젝트에서 실제 사이트까지: API 키로 로그인하고, 프로젝트를 호스팅 슬롯에 연결하고, 슬롯과 PHP, 디스크 및 WordPress를 비교하는 사전 점검을 확인한 후 푸시하세요. 문제가 발생할 경우를 대비한 재배포, 배포 내역 및 빌드 로그도 제공됩니다.

프로젝트가 로컬에서 실행되면 네 가지 명령어를 통해 Zinn Digital® 호스팅의 라이브 사이트로 이전할 수 있습니다. 즉 로그인, 프로젝트를 호스팅 슬롯에 연결, 사전 점검(pre-flight) 확인, 푸시입니다. 이 문서에서는 각 명령어와 출력 내용, 그리고 이후에 사용할 명령어인 재배포, 배포 내역, 빌드 로그를 살펴봅니다.

API 키로 로그인

대시보드의 설정 → API 키에서 키를 생성한 후 다음을 실행하십시오.

zinnector login

키는 프롬프트에 입력해야 합니다. 명령줄에서는 절대로 허용되지 않으므로 셸 기록이나 프로세스 목록에 남지 않습니다. CI에서는 echo "$ZINN_API_KEY" | zinnector login --profile ci와 같이 파이프로 전달하거나 ZINNECTOR_TOKEN을 설정하여 login을 완전히 건너뛰십시오. 키는 저장되기 전에 유효성 검사를 거치며 600 파일 모드로 저장됩니다. zinnector whoami --scopes는 로그인한 조직과 키가 가진 권한을 표시하며 샌드박스 키는 샌드박스 키로 표시됩니다.

슬롯에 프로젝트 연결

zinnector link                                   # 목록에서 사이트 선택
zinnector link example.com --repo acme/site --branch main

link는 사이트의 id를 zinnector.json에 기록하며, --no-repo를 전달하지 않는 한 프로젝트의 git 원격 저장소를 플랫폼의 사이트에 연결하여 푸시 시 배포되도록 합니다. zinnector.json을 커밋하십시오. 그러면 저장소를 복제한 동료가 별도의 안내 없이도 동일한 위치로 배포할 수 있습니다. 이 파일에는 비밀 정보가 포함되지 않습니다.

사전 점검(pre-flight) 확인

zinnector check

이 명령어는 CLI가 존재하는 이유입니다. 배포 대상 슬롯과 프로젝트를 비교하여 모든 불일치 사항과 비교할 수 없었던 모든 항목을 출력합니다.

  • PHP 버전: 메이저 버전 차이는 사이트를 확실히 망가뜨리므로 높음으로 평가되며, 모든 것을 심각으로 분류하면 사용자가 경고를 무시하게 되므로 마이너 차이는 더 낮게 평가됩니다.
  • 슬롯이 빌드한 버전으로 전환 가능한지 여부, 슬롯의 PHP가 지원 종료(end of life)를 지났는지 여부, 머신이 해당 버전을 적용했는지 아니면 단순히 전달만 받았는지 여부.
  • 슬롯에 실제로 남아 있는 디스크 및 inode 여유 공간 대비 프로젝트의 크기와 파일 수 — WordPress 트리는 디스크 한도에 훨씬 못 미치더라도 파일 수가 부족해질 수 있습니다.
  • 양쪽의 WordPress 버전, 슬롯의 프로비저닝 완료 여부, 푸시할 저장소 연결 여부.

이 명령어는 경고할 뿐 배포를 차단하지는 않습니다. 검사기가 알지 못하는 본인 사이트만의 정보를 사용자가 알고 있으므로 모든 결과는 zinnector push --force로 재정의할 수 있습니다. 비교할 수 없는 항목은 통과가 아닌 알 수 없음으로 보고되며 요약에는 항상 그 수가 표시됩니다. 기본적으로 로컬 PHP 버전은 zinnector.json에 선언된 버전입니다. 대신 --probe를 사용하면 로컬 런타임을 부팅하여 측정합니다. --strict는 CI 게이트가 요구하는 방식대로 알 수 없는 항목에 대해서도 0이 아닌 값으로 종료합니다.

푸시

zinnector push

push는 사전 점검을 실행하고 커밋을 푸시하며 배포를 트리거한 후 완료될 때까지 지켜보면서 최종 상태와 배포된 커밋을 출력합니다. --dry-run은 배포를 제외한 모든 작업을 수행하고, --no-wait는 배포를 트리거한 후 종료하며, --no-git은 푸시하지 않고 플랫폼에 이미 있는 내용을 배포합니다. 배포된 커밋이 방금 푸시한 커밋이 아닌 경우 이를 알려줍니다.

문제가 발생한 경우

zinnector deploys example.com        # 배포 내역 — 상태, 커밋, 트리거, 메시지
zinnector logs example.com --build   # 가장 최근 배포의 빌드 로그
zinnector logs example.com --error   # 사이트의 오류 로그
zinnector deploy example.com         # 플랫폼에 이미 있는 항목 재배포
zinnector ai "why is my deploy failing?"

zinnector ai는 플랫폼에서 본인의 계정을 대상으로 실행되므로 동일한 배포 내역과 로그를 확인할 수 있습니다. 프로젝트 내부에서 실행하면 디렉터리 이름, 버전, 사이트 id 등 프로젝트의 구조를 전송하며 파일 내용은 절대로 전송하지 않습니다.

관련 문서

모든 개발자 문서 →

블로그 최신 글

호스팅, SEO 및 대규모 사이트 운영에 대해 작성한 글입니다.

호스팅 계층에서의 SEO 및 링크 빌딩: 2026년 운영자의 관점

2026년 호스팅이 색인 생성과 링크 자산에 미치는 영향: 페이지의 색인 상태 유지, 구축 전 기존 도메인 검증, 검색 엔진 흔적 없는 링크 빌딩, 그리고 인프라가 SEO를 위해 할 수 있는 것과 할 수 없는 것에 대한 솔직한 분석.

게시물 읽기 →

WordPress를 빠르고 안전하게 만들기: 성능 및 플러그인 체크리스트

빠르고 안전한 WordPress를 위한 실용적인 체크리스트: 서버 수준 캐싱, 사이트별 객체 캐시, 사용할 가치가 있는 소수의 플러그인, 최신 스택 유지, 그리고 절대 캐시해서는 안 되는 WooCommerce 페이지.

게시물 읽기 →

2026년 관리형 웹 호스팅을 선택하는 방법: 구매자 가이드

제어판이 있는 저렴한 서버와 우수한 매니지드 호스팅을 실제로 구분 짓는 요소(마이그레이션, 백업, 격리, 진정한 캐싱 및 정직한 확장성), 그리고 계약하기 전에 이를 평가하는 방법.

게시물 읽기 →

블로그 읽기 →

아직 해결되지 않았나요?

모든 요금제에 지원 서비스가 포함되어 있으며, 고객센터는 하루 24시간 열려 있습니다. 또한 58개의 지원 언어 중 편하신 언어로 문의해 주시면 고객님의 언어로 답변해 드립니다.

지원팀에 문의 → 모든 글 →