2023-03-28 16:52:55
VSCode는 Electron을 기반으로 제작된 에디터이다.
그래서 웹 기반 기술에 근간을 두고 있으므로 이를 로컬 환경이 아닌 웹으로 접근하여 사용할 수 있도록 올리고자 한 것이 code-server이다.
잘만 운용한다면 여러 환경에서 성능 좋은 pc의 성능을 사용하면서 동일한 환경에서 개발을 진행할 수도 있을 것 이다.
깔끔한 서버의 상태를 유지하기 위해서 docker를 통해서 구축을 할 것이며, 관리의 용이함을 위해서 docker-compose를 활용한다.
사용할 이미지는 https://hub.docker.com/r/linuxserver/code-server 해당 이미지를 사용할 것 이다.
구축을 할 경로로 이동한다. 이 글에서는 /srv/code-server
에서 작업한다.
sudo mkdir -r /srv/code-server
cd /srv/code-server
sudo vim compose.yaml
compose.yaml
파일의 내용이다.
services:
c1:
image: lscr.io/linuxserver/code-server:latest
container_name: code-server1
environment:
- PUID=1000
- PGID=1000
- TZ=Asia/Seoul
- PASSWORD=비밀번호 #optional
- HASHED_PASSWORD= #optional
- SUDO_PASSWORD=비밀번호 #optional
- SUDO_PASSWORD_HASH= #optional
- PROXY_DOMAIN=외부_도메인 #optional
- DEFAULT_WORKSPACE=/config/workspace #optional
volumes:
- ./config:/config
ports:
- 8443:8443
restart: unless-stopped
대충 참고하여 수정후 저장
sudo docker compose up -d
이후 컨테이너를 올린 후 사용하면 된다.
만약 이를 Nginx를 통해서 리버스 프록시하여 제공할 것이라면 다음과 같은 헤더 수정이 필요합니다.
아래 내용을 location 블럭 하위에 넣어주세요.
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
proxy_set_header Accept-Encoding gzip;
웹 소켓을 사용하기 위해서 필요하므로 꼭 하여야 합니다.
이후 미리 정해둔 비밀번호를 입력하고 접속하면 사용가능하다.
끝.