从gitlab ci部署nodejs项目

问题描述 投票:3回答:1

我是node.js的新手,我试图通过gitlab ci部署node.Js项目。但在发现管道中的构建错误后,我意识到我将node_modules文件夹添加到了.gitignore,而我并没有将node_modules推送到gitlab。而node_modules文件夹本地是889MB,我无法推送它,所以我应该使用什么方法从其他地方使用node_module的文件夹。

即node_modules路径始终存在并可在远程服务器上访问!我是否需要在包中包含该路径。 JSON

可以使用docker维护node_modules吗?那么我将如何维护以保持特定于每个项目的更新。

node.js docker node-modules gitlab-ci
1个回答
6
投票

你没有检查node_modules文件夹是正确的,它们会在你运行npm install时自动填充

这应该是gitlab ci中构建管道的一部分。管道允许多个步骤以及将人工制品传递到下一阶段的能力。在您的情况下,您希望保存通过运行node_modules创建的npm install文件夹,然后可以使用依赖项进行测试或部署。

从npm v5开始,有一个锁定文件,以确保您在本地运行的内容与您在服务器上运行的内容相同

如果您想要修复它们并自动管理安全更新,您还可以使用类似rennovate的内容自动更新您的依赖项。 (rennovate是开源的,所以可以在gitlab上运行)

一个非常简单的gitlab CI管道可能是:

// .gitlab-ci.yml
stages:
    - build
    - deploy

build:
    stage: build
    script:
        - npm install
    artifacts:
        name: "${CI_BUILD_REF}"
        expire_in: 10 mins
        paths:
            - node_modules

deploy:
   stage: deploy
   script:
     - some deploy command
© www.soinside.com 2019 - 2024. All rights reserved.