我正在学习持续部署过程。我有一个手动将 ReactJS 应用程序部署到 Digital Ocean 提供的 Ubuntu 服务器的过程。我遵循的手动部署过程涉及以下步骤:
1) SSH 进入 Ubuntu 服务器。
2) 然后 git 将 Github 存储库克隆到 ubuntu 服务器上的以下目录:/var/www/ 其中包含 Frontend React 项目。
3) 转到目录 (/var/www/FEBookingAndCollections) 并键入 npm install,然后键入 npm run build。这将创建构建目录 (/var/www/FEBookingAndCollections/build)。我使用 Nginx 作为 Web 服务器,我已将 Web 文档根目录配置为提供以下路径 /var/www/FEBookingAndCollections/build 中的内容
4) 检查网站是否在线。
我想使用 CircleCI 和 Github 自动化这个过程。在我的 ReactJS 应用程序项目中,特别是我的 .circleci/config.yml。我有以下内容:
deploy:
machine:
enabled: true
steps:
- add_ssh_keys:
fingerprints:
- "16:a3:20:18:79 ..."
- run:
name: Deploy Over SSH
command: |
ssh -v root@46.121.314.160 "/var/local/deployScripts/./deployFe.sh"
就正在发生的事情而言,我想知道我应该在 deployFE.sh 文件中写入什么,以便自动执行 1 到 3 的步骤。以前有没有人编写过部署 shell 脚本并且能够提供建议?我是这个领域的新手