Nginx 역방향 프록시

도메인 접근, 로드 밸런싱, WebSocket 지원

왜 리버스프록시를 써야 하는가

OpenClaw는 기본적으로 포트 3000에서 실행되며 IP:3000으로 바로 접속 가능하지만 안 좋아 보이고 보안도 떨어짐. Nginx 역프록시 한 계층 추가하면 도메인으로 접속, 포트 80/443 공유, 로드 밸런싱도 가능.

그리고 나중에 HTTPS 인증서도 설정해야 하니 어차피 Nginx를 앞단에 써야 한다. 이 단계는 필수 과정이다.

네 단계로 리버스프록시 설정

1

Docker 설치(Amazon Linux 2023)

한 줄 명령어로 설치 끝내, Ubuntu/Debian 시스템은 apt install로 바로. 설치 후 자동으로 시작되고, 브라우저로 서버 IP 접속하면 nginx 기본 페이지 보이면 성공.

2

역프록시 규칙 설정

Nginx 설정 파일 작성, 도메인 요청을 OpenClaw 3000 포트로 전달. 중점은 WebSocket 설정, 아니면 실시간 기능 못 써.

3

프로세스 요약

수정 후 재시작 적용:

4

자동 시작 설정

서버 재시작 후에도 Nginx가 자동으로 시작되도록 확인, 매번 수동으로 켤 필요 없게 한다.

Docker 설치(Amazon Linux 2023)

Docker 설치(Amazon Linux 2023)
# Ubuntu / Debian

Nginx 설정 파일

이건 완전한 역프록시 설정, WebSocket 지원 포함. 아래 내용을 다음으로 저장: /etc/nginx/sites-available/openclaw

nginx.conf — OpenClaw 리버스프록시 설정
upstream openclaw_backend {

설정 활성화하고 테스트

사이트 설정 활성화
# 소프트링크로 사이트 활성화
⚠️ WebSocket 설정 절대 빠뜨리면 안 됨。OpenClaw 실시간 대화랑 스트리밍 출력은 WebSocket이 필요한데, 리버스프록시 설정하고 나서 대화가 끊긴다거나 메시지가 실시간으로 안 보인다면 십중팔구 WebSocket 설정 못한 거야. 위의 설정에서 proxy_http_version 1.1UpgradeConnection 이 세 줄은 하나도 빼면 안 된다.

다중 서비스 공존

서버에서 다른 서비스도 실행 중이면 Nginx로 도메인별 분산:

다중 도메인 다중 서비스 예제
# OpenClaw
이 튜토리얼이 도움 됐나?