例えば、コードを書くトレーニングで使用したり、プロジェクトメンバーが環境依存問題に時間を取られないようにしたり、ネットワーク制約のある環境で開発をしなければいけなかったり、様々な用途が思い当たります。そんな時、仮想マシン上の Docker でポート番号とファイルの保存先を分けた code-server を複数用意できれば解決するのでは、と思い実際に作ってみました。
一つ目の code-server を作成
userno=10443
docker run -d \
--name=code-server-$userno \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Asia/Tokyo \
-e PASSWORD=password \
-e SUDO_PASSWORD=password \
-e DEFAULT_WORKSPACE=/config \
-p $userno:8443 \
-v $HOME/work/code-server-$userno:/config \
--restart always \
lscr.io/linuxserver/code-server:latest
二つ目の code-server を作成
userno=11443
docker run -d \
--name=code-server-$userno \
-e PUID=1000 \
-e PGID=1000 \
-e TZ=Asia/Tokyo \
-e PASSWORD=password \
-e SUDO_PASSWORD=password \
-e DEFAULT_WORKSPACE=/config \
-p $userno:8443 \
-v $HOME/work/code-server-$userno:/config \
--restart always \
lscr.io/linuxserver/code-server:latest
それぞれの code-server に同時にアクセス

code-server を停止したり削除したりする場合
docker stop code-server-$userno
docker rm code-server-$userno
参考
https://github.com/linuxserver/docker-code-server
タグ: Docker, VSCode