Semaphore UI 접속
브라우저에서 열기: http://<SERVER_IP>
로그인:
- 사용자 이름:
admin - 비밀번호: 저장 위치
/root/semaphore/docker-compose.yml(SEMAPHORE_ADMIN_PASSWORD)
비밀번호 가져오기:
grep SEMAPHORE_ADMIN_PASSWORD /root/semaphore/docker-compose.yml
중요한 파일 및 디렉토리
- 설치 경로:
/root/semaphore - Compose 파일:
/root/semaphore/docker-compose.yml - Caddy 설정:
/etc/caddy/Caddyfile - Postgres 볼륨:
semaphore_postgres - 데이터 볼륨:
semaphore_data - 설정 볼륨:
semaphore_config - 임시 볼륨:
semaphore_tmp
도메인 & HTTPS (Caddy)
0. HTTPS는 IP 주소와 함께 사용할 수 없습니다.
1. 도메인 지정 (예: example.com) 서버 IP 주소에 연결합니다.
2. 업데이트 /etc/caddy/Caddyfile:
example.com {
reverse_proxy 127.0.0.1:3000 {
header_up X-Real-IP {client_ip}
}
}
3. Caddy 재시작:
systemctl restart caddy
4. Caddy가 SSL 인증서를 자동으로 발급하고 갱신합니다.
스택 관리
cd /root/semaphore
상태 확인:
docker compose ps
로그 보기:
docker compose logs -f
서비스 재시작:
docker compose restart
스택 중지:
docker compose down
스택 시작:
docker compose up -d
참고
- PostgreSQL은 컨테이너로 배포됩니다(
semaphore_db) - UI는 Caddy를 통해서만 노출됩니다(포트 직접 노출 없음)