使用Vscode结合docker进行开发的详细过程

 更新时间:2021年07月08日 15:57:03   作者:睿江云计算  
这篇文章主要介绍了如何使用Vscode结合docker进行开发,在本文中,我将提供一个在 Node 环境中运行的 JavaScript 应用程序示例。阅读在容器内开发以获取所有技术堆栈的详细文档,需要的朋友可以参考下

前言

使用 Docker 与 VS Code 可以优化整个本地开发环境,加速项目进度过程。在所有环境中使用相同的基础映像,为所有开发人员提供相同的编辑器工具,可以更容易实现标准。

大型项目的团队首先必须确保安装依赖、内核版本这些开发环境是统一的。为了解决开发环境一致性的问题,常规传统的办法就是制定开发人员遵循制定指南,但是尽管如此实际开发过程还是会遇到各种障碍。

设置环境的常规方法如下图所示:

在这里插入图片描述

另一种解决方案是使用所有必需的库和依赖项预先配置的开发环境,开发人员可以在容器中分拆这些库和依赖项。然后,开发人员可以在容器提供的隔离环境中工作。这极大地减少了开发人员在克隆代码库以开始处理它之间花费的时间。

在这里插入图片描述

除了为所有开发人员提供相同的环境之外,我们可以利用它来自动安装您的项目所需的特定扩展。这可以避免工具的不一致使用,并且省去开发人员手动安装的麻烦。

以下是通过结合使用 Docker 和 VS Code 的Remote — Containers扩展来实现的。

设置

在本文中,我将提供一个在 Node 环境中运行的 JavaScript 应用程序示例。阅读在容器内开发以获取所有技术堆栈的详细文档。

如果您尚未安装Docker和 VS Code,请先安装它们。在 VS Code 中安装Remote — Containers扩展。确保 Docker 正在您的机器上运行。

转到您的项目并在根目录中创建一个名为.devcontainer的文件夹。这个新文件夹包含开发容器所需的配置文件。

在.devcontainer 中创建Dockerfile和devcontainer.json并添加以下配置。

Dockerfile文件如下

# Specify the base image you want your dev container to use.
# You may use the same exact base image your application would use in production for consistancy.
# That could prevent surprises such as "works in local, but not in PROD".

FROM node:14.17.0-alpine

# Additionally you can install other dependencies for the environment while configuring the base image.
# In this example, I am installing Git as the Alpine version of node does not come with one. 

RUN apk update
RUN apk add git

devcontainer.json文件如下

{
    "name": "DevContainer ReactApp",

    // Provide the dev container with a Dockerfile that it can use to build an image and run the container.
    "dockerFile": "Dockerfile",

    // Command(s) to run before the container is created.
    // In this case we are installing the node modules.
    "initializeCommand": "yarn install",

    // Starts the development server every time the container starts.
    // This is triggered on reopening the container as well. 
    "postStartCommand": "yarn start",

    // Forward your application's port(s) running in the container to the local machine.
    "forwardPorts": [3000],

    // Required VSC code extensions that you want to automatically install for the developers to use.
    "extensions": [
        "dbaeumer.vscode-eslint",
        "esbenp.prettier-vscode",
        "eamodio.gitlens"
    ]

    // Use the devcontainer.json reference to explore all possible configurations.
    // https://code.visualstudio.com/docs/remote/devcontainerjson-reference
}

完成后,我们需要构建容器。为此,请使用 VS Code 命令面板中的“在容器中打开文件夹”或“在容器中重新打开”。

在这里插入图片描述
在这里插入图片描述

这应该初始化开发容器。它拉取 docker 基础镜像,配置容器,并启动开发服务器。

在这里插入图片描述
在这里插入图片描述

结语

容器的构建和配置是一次性活动,需要时间。如果没有更改,后续重建会更快。但是,如果 devcontainer.json 或 Dockerfile 发生更改,则需要重新构建以应用更改。如果您尝试直接重新打开,系统将提示您重建。

到此这篇关于使用Vscode结合docker进行开发的的文章就介绍到这了,更多相关Vscode结合docker开发内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker四种网络类型原理实例解析

    Docker四种网络类型原理实例解析

    这篇文章主要介绍了Docker四种网络类型原理实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • docker在win10家庭版下构建laravel开发环境的教程详解

    docker在win10家庭版下构建laravel开发环境的教程详解

    这篇文章主要介绍了docker在win10家庭版下构建laravel开发环境,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06
  • 解决docker日志挂载的问题

    解决docker日志挂载的问题

    这篇文章主要介绍了解决docker日志挂载的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-11-11
  • 两种方式创建docker镜像的启动容器时区别介绍(总结篇)

    两种方式创建docker镜像的启动容器时区别介绍(总结篇)

    这篇文章主要介绍了基于两种创建docker镜像的启动容器时区别总结,第一种凡是用docker commit生成的镜像启动的时候可以加载一个启动自己应用的脚本,第二种用Docfile文件生成的镜像时,来启动容器就不用再加这个脚本了,具体详情一起通过本文学习吧
    2016-10-10
  • Docker创建镜像、怎么修改、上传镜像等详细介绍

    Docker创建镜像、怎么修改、上传镜像等详细介绍

    这篇文章主要介绍了Docker创建镜像、怎么修改、上传镜像等详细介绍的相关资料,需要的朋友可以参考下
    2016-12-12
  • 详解使用Docker快速部署ELK环境(最新5.5.1版本)

    详解使用Docker快速部署ELK环境(最新5.5.1版本)

    这篇文章主要介绍了详解使用Docker快速部署ELK环境(最新5.5.1版本),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-09-09
  • Docker安装Redis并介绍可视化客户端进行操作

    Docker安装Redis并介绍可视化客户端进行操作

    这篇文章主要介绍了Docker安装Redis并介绍可视化客户端进行操作方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • docker私有仓库的搭建和使用详解

    docker私有仓库的搭建和使用详解

    这篇文章主要介绍了docker私有仓库的搭建和使用详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • docker run启动的容器挂掉了数据怎么办

    docker run启动的容器挂掉了数据怎么办

    这篇文章主要介绍了docker run启动的容器挂掉了,数据怎么办,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-09-09
  • 详解Docker 容器基础系统镜像打包

    详解Docker 容器基础系统镜像打包

    这篇文章主要介绍了详解Docker 容器基础系统镜像打包,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12

最新评论