如果你已经在 Docker 中启动了 code-server,并希望在 JupyterLab 中集成它,可以按照以下步骤进行配置:
code-server docker启动命令
docker run -d \
--name code-server \
-p 8080:8080 \
-v ~/projects:/home/coder/project \
-e PASSWORD=yourpassword\
codercom/code-server:latest
假设
- 你已经在 Docker 中运行了 code-server,并且它在某个端口上监听(例如,8080)。
- 你有一个运行中的 JupyterLab 实例。
步骤
-
安装 JupyterLab Server Proxy 扩展
你需要安装
jupyter-server-proxy
扩展,以便能够在 JupyterLab 中转发到 code-server:pip install jupyter-server-proxy
然后,确保扩展在 JupyterLab 中启用:
jupyter lab build
-
配置 JupyterLab 以代理 code-server
你需要修改 JupyterLab 的配置文件来添加一个代理配置,使得 JupyterLab 可以通过一个 URL 路径访问 code-server。
找到或创建
jupyter_notebook_config.py
,通常位于~/.jupyter/
目录下。如果没有这个文件,你可以创建它。添加以下配置:
c.ServerProxy.servers = { 'code-server': { 'command': ['echo', 'Code Server is running externally'], 'port': 8080, # code-server 在 Docker 中监听的端口 'absolute_url': False, 'launcher_entry': { 'title': 'VS Code', 'icon_path': '/path/to/icon.png' # 可选:一个图标路径 } } }
这里的
'command': ['echo', 'Code Server is running externally']
是一个占位符,因为 code-server 已经在 Docker 中运行,你不需要从 JupyterLab 启动它。 -
访问 code-server
重启 JupyterLab,然后你应该能在 JupyterLab 的启动器中看到一个新的选项,点击它可以通过 JupyterLab 的代理访问 code-server。
注意事项
- 端口和网络配置:确保 Docker 中的 code-server 端口(如 8080)对 JupyterLab 所在的主机是可访问的。如果 JupyterLab 和 Docker 在同一台机器上运行,确保 Docker 网络配置允许这种访问。
- 安全性:如果在生产环境中运行,确保 Docker 中的 code-server 配置了适当的身份验证(如密码保护)和 HTTPS。
- 图标路径:
icon_path
是可选的,你可以指定一个图标文件来在 JupyterLab 启动器中显示。
通过这些步骤,你可以在 JupyterLab 中集成已经在 Docker 中运行的 code-server。