Code Tunnel Image
일반적인 설치
# cpu 타입 확인
lscpu | grep -i architecture
도커파일 작성
FROM node:current-slim
# Bun 및 VS Code CLI 설치에 필요한 최소 도구 설치
RUN apt-get update && apt-get install -y \
curl \
unzip \
&& rm -rf /var/lib/apt/lists/*
# 1. Bun 설치
RUN curl -fsSL https://bun.sh/install | bash
ENV PATH="/root/.bun/bin:${PATH}"
# 2. VS Code CLI (Tunnel) 설치
# x64(인텔/AMD 64비트) 아키텍처용 바이너리를 다운로드하여 /usr/local/bin에 배치합니다.
RUN curl -Lk 'https://code.visualstudio.com/sha/download?build=stable&os=cli-alpine-x64' --output vscode_cli.tar.gz \
&& tar -xf vscode_cli.tar.gz \
&& mv code /usr/local/bin/ \
&& rm vscode_cli.tar.gz
WORKDIR /app
# 3. 컨테이너 시작 시 터널 자동 실행 (약관 동의 및 로그인 대기 상태)
# --accept-server-license-terms 옵션으로 약관 동의 절차를 자동 통과시킵니다.
# CMD ["code", "tunnel", "--accept-server-license-terms"]
# 직접 터미널에 들어가서 인증하는게 좋겠다.
# docker compose exec bun_dev /bin/sh
도커컴포즈 작성
services:
bun_dev:
# 1. 빌드 설정 (현재 디렉토리의 Dockerfile을 사용하여 이미지 생성)
build:
context: .
dockerfile: Dockerfile
# 이미지 이름설정
image: node/bun
# 2. 컨테이너 이름 설정
container_name: bun_dev
# 3. 포트 매핑 (명령어에 있던 3000과 4321 포트)
ports:
- "3000:3000"
- "4321:4321"
# 4. 볼륨 설정 ($PWD를 /app에 연결하여 로컬 수정사항 실시간 반영)
volumes:
# 중요: 터널 인증 정보 및 설정 보존용 볼륨
- ./vscode/cli:/root/.vscode/cli
- ./vscode-server:/root/.vscode-server
- .:/app
# 5. 작업 디렉토리 및 터미널 설정
working_dir: /app
stdin_open: true # -i 옵션 (표준 입력 유지)
tty: true # -t 옵션 (가상 터미널 할당)
# 6. 실행 명령어 (sh로 진입하거나 bun dev 등 개발 서버 실행용)
command: /bin/sh
docker compose down && \
docker compose up -d && \
docker compose exec bun_dev /bin/sh
code tunnel
# 인증 및 연결 후
# Ctrl + Z (프로세스 일시 정지)
bg
# (백그라운드로 깨우기)
# Ctrl + D (컨테이너 나가기)
sudo chown -R sixtick:sixtick ~/source/sixticklog
docker compose logs -f bun_dev
백그라운드 상태에서 재접속을 하면 포그라운드로 올라오는 현상이 있네 . 이때 터미널을 빠져나간 상태이면 그냥 프로세스가 죽는구만 나중에 필요할때 쓰자.