前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >1 分钟上手,在容器中运行 Visual Studio Code

1 分钟上手,在容器中运行 Visual Studio Code

作者头像
为少
修改2023-09-25 16:55:09
3.8K0
修改2023-09-25 16:55:09
举报
文章被收录于专栏:黑客下午茶

这个插件允许我们在容器中运行 Visual Studio Code。

在项目的根目录中,您需要创建一个名为 .devcontainer 的文件夹。我们将在此处存储环境设置。

然后在此文件夹中创建两个文件,devcontainer.json 和一个 Dockerfile。

命名很重要,因为 Visual Studio Code 希望我们提供一些文件夹和文件名才能成功运行容器。

您的文件夹结构应如下:

在 Dockerfile 中,我们选择 Docker 镜像并在安装镜像后运行所需的任何命令(例如全局安装)。

代码语言:javascript
复制
FROM node:12.14.1-stretch
RUN npm install -g eslint prettier

然后,在 devcontainer.json 中,我们可以配置所有设置。

devcontainer.json 基本上是一个配置文件,该文件确定如何构建和启动 dev 容器。

代码语言:javascript
复制
{
  "name": "Node.js Sample",
  "dockerFile": "Dockerfile",
  "appPort": 3000,
  "extensions": ["dbaeumer.vscode-eslint"],
  "settings": {
    "terminal.integrated.shell.linux": "/bin/bash"
  },
  "postCreateCommand": "yarn install",
  // Comment out the next line to run as root instead. Linux users, update
  // Dockerfile with your user's UID/GID if not 1000.
  "runArgs": ["-u", "node"]
}
  1. dockerFile - 您要用作镜像的 Dockerfile 的路径。
  2. appPort - 在容器运行时应在本地提供的端口或端口数组。
  3. extensions - 扩展 ID 的数组,这些 ID 指定创建容器时应在容器内部安装的扩展。
  4. settings - 将默认 settings.json 值添加到特定于容器/机器的设置文件中。
  5. postCreateCommand - 创建容器后要运行的命令字符串或命令参数列表。
  6. runArgs - 运行容器时应使用的 Docker CLI 参数数组

这是 devcontainer.json 选项的完整列表。

检查一下

容器运行并连接后,您应该在状态栏的左下方看到远程上下文(remote context)更改:

安装了“Remote — Containers”扩展后,您将在最左侧看到一个新的状态栏项目。

远程状态栏项目可以快速向您显示在哪个上下文中运行VS Code(本地或远程),单击该项目将弹出“Remote — Containers”命令。

选择在容器中重新打开。

等待容器构建

如果这是您的第一次连接,则将下载并构建 Docker 镜像,并将启动运行 VS Code Server 副本的容器。第一次可能需要几分钟,但以后的连接仅需几秒钟。

检查环境

在容器中进行开发的有用的事情之一是,您可以使用应用程序所需的特定版本的依赖关系,而不会影响本地开发环境。

代码语言:javascript
复制
node --version
npm  --version
本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2021-01-19,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 黑客下午茶 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档