添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

由于前端每次发布版本,需要手动打包,将dist包再登录服务器后,放入指定位置,这时需要考虑的问题就是,手动操作会出现打错包,包放错的问题,所以希望可以实现自动安装依赖,代码检查,打包,部署四个步骤一体化的过程

一、Linux 安装nginx

在Linux上安装NGINX的步骤如下:

打开终端(命令行界面)。

如果你想修改NGINX的配置文件,你可以找到NGINX的配置文件路径(一般在 /etc/nginx/ 目录下),然后使用文本编辑器进行修改。例如,可以使用以下命令打开配置文件:

sudo nano /etc/nginx/nginx.conf

完成修改后,保存并退出编辑器。然后,重新加载NGINX配置文件的命令为:

sudo systemctl reload nginx
sudo yum install npm
// npm 配置指向淘宝镜像
npm config set registry https://registry.npm.taobao.org/
// 安装 yarn,yarn打包更快
npm install -g yarn
        - zip dist.zip ./dist
        - cp ./dist.zip /opt/project/test-web/ # /为根目录,可自己查看服务器根目录路径
        - cd /opt/project/test-web
        - cp -r dist /opt/project/web-bak/test/dist-`date +%y%m%d-%H:%M:%S` #主要用于备份dist文件
        - rm -rf dist #删除dist文件
        - unzip dist.zip #解压dist.zip文件
        - echo "deploy...finished"

1. 压缩 dist 文件

yum install zip

2. 解压

yum install unzip

七、遇到的问题:

1. ERROR: Preparation failed: ssh command Connect() error: getting SSH authentication methods: open ~/.ssh/id_rsa: no such file or directory
原因: ~/.ssh/id_rsa 文件路径访问错误
解决办法:/root/.ssh/id_rsa
2. fatal: git fetch-pack: expected shallow list
 原因: Centos 7 服务器上默认安装的 Git 是 1.8.3.1 版本的 ,git 版本太低
解决办法: 更新 git 版本

首先,把老版本的 Git 卸掉。

sudo yum -y remove git
sudo yum -y remove git-*

添加 End Point 到 CentOS 7 仓库

sudo yum -y install https://packages.endpointdev.com/rhel/7/os/x86_64/endpoint-repo.x86_64.rpm

安装 Git

sudo yum -y install git

查看安装后的 Git 版本、

$ git version
git version 2.36.0

3. FATAL: Failed to start gitlab-runner: exit status 5

1. 服务不存在

1. 查看服务是否存在
cd /etc/systemd/system/gitlab-runner.service 
a. 如果不存在则,重新安装
gitlab-runner install --working-directory /home/gitlab-runner --user gitlab-runner
b. 启动服务
gitlab-runner start

2. 原因:gitlab-runner -v 提示有安装版本,但执行 gitlab-runner  start / restart / stop 所有相关命令都提示failed

解决办法: 

a、gitlab 中删除 runner 后,新建 runner 

[root@localhost gitlab-runner]# cd ~
[root@localhost ~]# cd /etc/gitlab-runner/
[root@localhost gitlab-runner]# vim config.toml 

 点击 i 进入编辑

 修改 token

 点击 esc 退出编辑,:wq 保存并关闭

c、观察 gitlab-runner 是否异常

gitlab-runner --debug run

4. ERROR: Preparation failed: ssh command Connect() error: getting host key callback: open /root/.ssh/known_hosts: no such file or directory

原因:未发现该文件

解决办法:在 config.toml 中新增内容如下

disable_strict_host_key_checking = true

打开文件请参照问题3

 5. npm ERR! Missing script: "build"

原因:“npm ERR! missing script: build” 错误通常发生在执行 npm run build 命令时,表示在 package.json 文件中未定义名为 “build” 的脚本。

// package.json
  "name": "my-project",
  "version": "1.0.0",
  "scripts": {
    "start": "node server.js"
    // 缺少 "build" 脚本
  "dependencies": {
    // 依赖列表

6. ssh: Could not resolve hostname : Name or service not known

7. npm install 太慢

解决办法:在linux服务器中 更换镜像源:使用淘宝镜像源或其他国内镜像源可以加速下载速度,可以通过以下命令进行设置

npm config set registry https://registry.npm.taobao.org/

8. cp: 无法创建普通文件"/sys/dev/Hello.java": 权限不够  

9. cp: cannot create regular file ‘/root/opt/project/test-gitlab/’: No such file or directory

提示路径错误,解决办法:从服务器中查找且确认该路径是否正确,一般情况下是错的

从根目录查看要找的路径,一层一层找,来确认路径是否正确