본문 바로가기

IT/AI 자동화

도커 데스크탑 n8n 셀프호스팅! 외부에서도 내 도메인으로 접속하는 방법(cloudflare tunnel)

로컬기반의 n8n을 이용하다보니 다른 컴퓨터에서도 접속해서 작업을 하고 싶어졌다.

필요한 것은 2가지다

1. (유료) 내 도메인 주소

2. (무료) Cloudeflare Tunnel

그 외 환경은 24시간 가동되는 맥미니에 도커 데스크탑으로 n8n을 실행중이다.

 

Cloudflare Tunnel은? 포트 포워딩 없이 안전하게 외부에서 접속할 수 있는 것이 장점

사전 준비: 도메인 1개 없으면 가비아, 호스팅케이알 등에서 구입 후 클라우드플레어 네임서버 연결

 

진행 순서

  1. Cloudflare Zero Trust 접속: Cloudflare 대시보드에서 Zero Trust > Access > Tunnels로 이동

Cloudflare 이미지

2. 돈이 없으니 Zero Trust Free 0원 짜리를 선택하면 결제수단을 등록하자! 돈나가는거 아님

Cloudflare 이미지

3. [Networks > Connectors] 메뉴로 진입하고 Add a tunnel 버튼을 누르자
영어가 불편해서 우측 상단에 언어를 한국어로 변경했다.

Cloudflare 이미지

4. [네트워크 > 커넥터 > 터널 추가] 를 누르고 [선택 Cloudflared] 클릭

Cloudflare 이미지

5. 터널 생성: 터널 이름을 정한다(예: n8n-macmini).

Cloudflare 이미지

6. 커넥터 설치 :

  • 운영체제에서 도커를 선택하자 왜냐 도커데스크탑을 사용하니까! 
  • --token 뒤에 있는 부분을 복사

Cloudflare 이미지

7. 적당한 경로에 docker-compose.yml 파일을 생성하고 아래 내용 작성! 본인 환경에 맞게 도메인과 토큰값을 입력하자
혹시 기존에 도커데스크탑으로 n8n을 설치했고 컨테이너 이름도 n8n으로 설정했다면 오류가 난다.
왜냐 아래 도커컴포즈 파일에서도 container_name: n8n 로 지정했기 때문이다. 이런 경우 컨테이너 이름을 다르게 변경하자

version: '3.8'

services:
  # 1. n8n 서비스
  n8n:
    image: n8nio/n8n:latest
    container_name: n8n
    restart: always
    ports:
      - "5678:5678"
    environment:
      - GENERIC_TIMEZONE=Asia/Seoul
      - TZ=Asia/Seoul
      # 중요: 본인의 최종 도메인 주소를 입력하세요 (https 필수)
      - WEBHOOK_URL=https://n8n.내도메인.com
      - VUE_APP_URL_BASE_API=https://n8n.내도메인.com
    volumes:
      - ./n8n_data:/home/node/.n8n

  # 2. Cloudflare Tunnel 서비스
  tunnel:
    image: cloudflare/cloudflared:latest
    container_name: cloudflared-tunnel
    restart: always
    command: tunnel run
    environment:
      # 아까 복사한 --token 뒤의 값을 아래 넣자
      - TUNNEL_TOKEN=토큰값

8. 작성한 docker-compose.yml을 적용하자. 터미널에서 docker-compose.yaml

docker-compose up -d

9.  도커 데스크탑에 n8n과 cloudflared가 설치된 모습

도커데스크탑 이미지

10. 클라우드플레어에서 커넥터 상태가 정상인지 확인

클라우드플레어 이미지

11. 상태 옆의 ... 버튼을 클릭해서 구성(Configue) 진입

클라우드플레어 이미지

12. 게시된 응용 프로그램 경로에서 하위 도메인은 n8n 도메인은 내가 설정한 도메인으로 설정!
경로는 그대로 빈값으로 그대로 두고 서비스의 형식은 http URL은 n8n:5678 입력

13. 설정완료! 자 인터넷 브라우저를 열고 n8n.내도메인.com 으로 접속하면 짜잔!! 정상적으로 웹페이지가 열린다

n8n 이미지

여기서 처음 웹페이지를 열 수 없다고 나와서 삽질이 있었다.
해결방법은 웹브라우저 캐시를 지우고 해보거나 핸드폰으로 접속해보면된다.

사파리 이미지

잘 안된다 싶으면 아이폰 기준으로 사파리의 개인정보 보호 브라우징에서 접속하면 끝!!

아이폰 이미지

 

 

 

'IT > AI 자동화' 카테고리의 다른 글

도커 n8n 설치방법! AI 자동화 시작의 첫걸음  (0) 2025.12.13