Post

Project: Cone 서버 구축 가이드 (v0.93.41)

🛠️ Project: Cone (PJCone) 서버 구축 가이드 v0.93.41

PJCone은 사용자가 직접 데이터를 관리하는 Self-hosted 시스템입니다. 본 가이드는 Docker-Compose를 이용하여 가장 안전하고 빠르게 서버를 구축하는 방법을 다룹니다.


1. 사전 준비 (Prerequisites)

서버를 구동하기 위해 아래 도구가 설치되어 있어야 합니다.

  • Docker & Docker-Compose: 공식 홈페이지에서 OS에 맞는 버전을 설치하세요.
  • Git: 소스 코드 복제를 위해 필요합니다.

2. 빠른 설치 (Quick Start)

Docker-Compose를 이용하면 복잡한 환경 설정 없이 명령어 한 줄로 서버 구성을 끝낼 수 있습니다.

STEP 1. 프로젝트 복제

터미널(또는 CMD)을 열고 서버 파일을 다운로드할 폴더에서 아래 명령어를 입력합니다.

1
2
git clone https://github.com/is2you2/pjcone_server.git
cd pjcone_server

STEP 2. 설정 확인 (docker-compose.yml)

제공된 docker-compose.yml 파일은 이미 최적화되어 있습니다. 메모장 등으로 파일을 열어 데이터 저장 위치(Volumes)와 접속 포트를 확인하세요.

STEP 3. 서버 실행

아래 명령어를 입력하면 필요한 이미지를 빌드하고 서버를 백그라운드에서 실행합니다.

1
docker-compose up -d

실행 후 http://localhost:포트번호를 통해 서버 동작 여부를 확인할 수 있습니다.


3. 핵심 설정 가이드 (Configuration)

포트(Port) 매핑

기본적으로 서버는 내부망에서 동작합니다. 외부에서 접속하게 하려면 공유기의 포트 포워딩 설정이 필요합니다.

  • Host Port: 사용자가 접속할 외부 포트 (예: 8080)
  • Container Port: 앱 내부에서 사용하는 포트

데이터 보안 및 백업 (Volumes)

컨테이너를 삭제해도 데이터가 유지되도록 볼륨 매핑이 되어있습니다.

  • ./postgres:/var/lib/postgresql/data: 모든 이슈, 채팅, 미디어 파일이 현재 폴더의 postgres 폴더에 저장됩니다.
  • 중요: 관리자는 DB 데이터(postgres)와 업로드된 미디어(uploader/cdn) 폴더를 주기적으로 백업하면 서버의 모든 상태를 완벽히 복구할 수 있습니다.

4. 초보자를 위한 핵심 팁 (Troubleshooting)

❓ 왜 Docker-Compose를 쓰나요?

서버 실행에 필요한 DB, 런타임 등을 가상 환경에 격리하여 설치합니다. 덕분에 사용자 PC를 깨끗하게 유지하면서도, 설정 파일 하나로 누구나 동일한 환경의 서버를 즉시 구축할 수 있습니다.

❓ 서버 상태를 확인하고 싶어요.

실행 중인 서버의 로그를 실시간으로 확인하려면:

1
docker-compose logs -f

❓ 서버를 끄거나 시작하고 싶어요.

  • 시작: docker-compose up -d
  • 종료: docker-compose down

5. 보안 권장사항

  • 내부망 운영: 소규모 팀이라면 가급적 VPN이나 사설 네트워크 망 내에서 운영하는 것이 가장 안전합니다.
This post is licensed under CC BY 4.0 by the author.