在FittenCode中配置Docker容器化开发环境需通过外部Dockerdaemon构建镜像和容器,注意Dockerfile的CMD设为阻塞命令,挂载工作区必须精确到文件级或子目录,设置--shm-size=2g避免热更新卡死,再通过远程资源管理器连接容器并配置调试与端口转发。
在 Fitten Code 里配置 Docker 容器化开发环境,流程上并不复杂,但有几个细节需要提前注意。实际操作的核心在于让编辑器能连接远程 Docker 容器,将代码编写、调试、运行全链路放到隔离环境中完成。Fitten Code 本身不包含 Docker 构建引擎,因此需要借助外部的 Docker daemon 来完成镜像和容器管理,代码路径和端口映射必须正确挂载,否则可能出现保存即崩溃、调试无响应、端口无法暴露等问题。

长期稳定更新的攒劲资源: >>>点此立即查看<<<
整个过程可拆分为五个关键步骤,每一步都有必须注意的细节,缺少任何一步都可能导致前功尽弃。
打开终端,输入命令 docker info。如果返回信息中包含 Server Version 和 Default Runtime 两个字段,说明 Docker 守护进程正常运行;如果提示 Cannot connect to the Docker daemon,则意味着 Docker Desktop 未启动,或者在 Linux 系统上当前账户未加入 docker 用户组——这一点至关重要,不解决此问题后续所有配置都无法生效。
Linux 用户还需执行 groups | grep docker 验证,若无输出,则运行 sudo usermod -aG docker $USER && newgrp docker,添加组后需重新登录。
新建一个目录(例如 fitten-dev),并在其中放置如下 Dockerfile:
FROM docker.fxxk.dedyn.io/node:18.20 ENV TZ=Asia/Shanghai LANG=C.UTF-8 RUN apt update && apt install -y vim curl wget && rm -rf /var/lib/apt/lists/* COPY . /workspace WORKDIR /workspace RUN npm config set registry https://registry.npmmirror.com EXPOSE 3000 5000 8080 CMD ["tail", "-f", "/dev/null"]
此镜像特意去掉了 SSH 服务,因为 Fitten Code 通过 SSH 连接容器时,权限和密钥问题容易造成连接中断,省去这些环节反而更稳定。另外,CMD 必须设为阻塞式命令(如 tail -f /dev/null),绝不能写成 npm start 这类前台服务,否则容器启动后会立即退出。
在 fitten-dev 目录中执行构建命令:docker build -t fit-node:dev .,然后运行容器:
docker run -d \ --name fit-dev \ -v "$(pwd)/src:/workspace/src" \ -v "$(pwd)/package.json:/workspace/package.json" \ -p 3000:3000 -p 5000:5000 \ --shm-size=2g \ fit-node:dev
这里有一个容易出错的地方:-v 挂载必须精确到文件级或子目录(如 package.json 或 src/),切勿直接挂载整个 /workspace,否则 Fitten Code 会因容器内路径冲突导致文件监视失效。另外--shm-size=2g 为必填项,否则 Vue 或 React 的热更新会在 WebSocket 连接阶段卡死。
打开 Fitten Code,在左侧活动栏点击“远程资源管理器”,然后点击“+ 添加新连接”,选择“Docker Host”,输入本地 Docker socket 路径:Linux 或 macOS 为 /var/run/docker.sock,Windows WSL2 环境下为 //./pipe/docker_engine。
连接成功后,在容器列表中找到 fit-dev,右键选择“Attach Visual Studio Code Server”。Fitten Code 会自动下载并注入 VS Code Server 到容器内,大约需要 40 秒。如果超过 2 分钟仍停留在“Installing VS Code Server…”状态,说明容器内存不足,或网络策略拦截了 GitHub release 域名。此时需手动进入容器执行:curl -fsSL https://update.code.visualstudio.com/commit:stable/server-linux-x64/stable > /tmp/vscode-server.tar.gz
在 Fitten Code 中打开已挂载的 src 目录,按 Ctrl+Shift+P,输入“Preferences: Open Settings (JSON)”,添加如下配置:
"remote.docker.portForwarding": {
"3000": "localhost:3000",
"5000": "localhost:5000"
}
再按 Ctrl+Shift+P,输入“Debug: Open launch.json”,选择 Node.js 环境,将内容替换为:
{
"version": "0.2.0",
"configurations": [
{
"type": "pwa-node",
"request": "launch",
"name": "Launch via NPM",
"runtimeExecutable": "npm",
"runtimeArgs": ["run", "dev"],
"port": 9229,
"address": "0.0.0.0",
"sourceMaps": true,
"skipFiles": ["/**"]
}
]
}
保存后,点击右上角绿色三角形启动调试。断点命中位置会实时显示在 Fitten Code 编辑器中,变量面板也能展开查看值——这才是容器化开发的正确使用方式。
侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述