AIoT.IO.VN
🌐 SONG NGỮ

VSCodium trong Docker: IDE web cho HomeLab ở cổng 8003

Ng Nghia Phan • • ⚡ 2 phút đọc
VI EN
MỤC LỤC BÀI VIẾT (Nhấn để xem)

VSCodium là bản build cộng đồng của Visual Studio Code, hướng tới binary không kèm telemetry/tracking của Microsoft. Tutorial i12bretro chạy bản LinuxServer trong Docker, lưu config và code ra host, rồi mở IDE ở cổng 8003.1

Cài Docker

Đăng nhập Linux Docker host:

# install prerequisites
sudo apt install apt-transport-https ca-certificates curl software-properties-common gnupg-agent -y
# add docker gpg key
curl -fsSL https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release)/gpg | sudo apt-key add -
# add docker software repository
sudo add-apt-repository "deb [arch=$(dpkg --print-architecture)] https://download.docker.com/linux/$(awk -F'=' '/^ID=/{ print $NF }' /etc/os-release) $(lsb_release -cs) stable"
# install docker
sudo apt install docker-ce docker-compose containerd.io -y
# enable and start docker service
sudo systemctl enable docker && sudo systemctl start docker
# add the current user to the docker group
sudo usermod -aG docker $USER
# reauthenticate for the new group membership to take effect
su - $USER

Chạy VSCodium

Xem UID/GID, tạo hai thư mục persistent rồi chạy container. Kiểm tra UID/GID của user sẽ chạy container rồi điền vào PUID/PGID:

# list current uid and gid, note these for later
id $user
# create working directories
mkdir ~/docker/vscodium/{config,code} -p
# run the vscodium docker image
# replace PUID, GUID with the output of the id $user command above
docker run -d --name=vscodium --cap-add=IPC_LOCK -e PUID=1000 -e PGID=1000 -e TZ=America/New_York -p 8003:3000 -v ~/docker/vscodium/config:/config -v ~/docker/vscodium/code:/code --shm-size="1gb" --restart unless-stopped lscr.io/linuxserver/vscodium:latest
Tài trợ / Quảng cáo

Mở http://localhost:8003 theo source, hoặc thay localhost bằng DNS/IP của host khi truy cập từ máy khác. Container có --cap-add=IPC_LOCK, shared memory 1GB, và ghi dữ liệu vào hai thư mục host.

Kiểm tra và giới hạn

Kiểm tra docker ps, docker logs vscodium, quyền đọc/ghi ~/docker/vscodium/config và ~/docker/vscodium/code. Không expose IDE trực tiếp ra Internet; dùng reverse proxy có authentication hoặc VPN. Backup code/config trước khi update image, và kiểm tra extension có nguồn tin cậy.

Nguồn