热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

用gitlab-ci部署ReactApp的最佳方法?

如何解决《用gitlab-ci部署ReactApp的最佳方法?》经验,为你挑选了1个好方法。

我刚刚开始了解gitlab CI / CD。我有自己的gitlab实例,还有两个跑步者,1个共享的,1个特定于项目的,都使用docker引擎。

目前,我的登台服务器是其自己的VM,它通过docker-compose托管。我通常使用裸git repo部署到此服务器,并仅将生成文件保留在git中。

但是我想切换到CI / CD模型,所以我尝试了以下操作.gitlab-ci.yml

image: node

stages:
- build
- stage

build_frontend:
  stage: build
  script:
  - cd ./src/frontend
  - npm install && npm audit fix
  # CI=false set to ignore warnings as errors
  - CI=false npm run build
  artifacts:
    paths:
    - ./src/frontend/build
  tags:
  - projectname

但是我对如何实际部署构建有些迷惑。最好的方法是将文件获取到登台服务器(这只是一个VM)上。



1> VonC..:

您可以从GitLab本身如何使用自己的CI中获取一些线索,如“ 如何在Vue.js中使用GitLab CI ”中所述:

他们有专门的部署步骤:

build site:
  image: node:6
  stage: build
  script:
    - npm install --progress=false
    - npm run build
  artifacts:
    expire_in: 1 week
    paths:
      - dist

unit test:
  image: node:6
  stage: test
  script:
    - npm install --progress=false
    - npm run unit

deploy:
  image: alpine
  stage: deploy
  script:
    - apk add --no-cache rsync openssh
    - mkdir -p ~/.ssh
    - echo "$SSH_PRIVATE_KEY" >> ~/.ssh/id_dsa
    - chmod 600 ~/.ssh/id_dsa
    - echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > ~/.ssh/config
    - rsync -rav --delete dist/ user@server.com:/your/project/path/

因此,如果您可以打包和打包应用程序,则可以将其部署到VM。


推荐阅读
author-avatar
李伟祥祥
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有