Интерфейсный инструмент автоматического развертывания одним щелчком мыши 🛠 v1.2.0 (поддерживает кластерное развертывание) обновление

Vue.js

Интерфейсный инструмент автоматического развертывания одним щелчком мыши 🛠 v1.2.0 (поддерживает кластерное развертывание) обновление

Этот инструмент развертывания переднего плана я сделал раньше в свободное время (исходная ссылка:Интерфейсный инструмент развертывания в один клик) было подтверждено многими друзьями-копателями. Конечно, было поднято много проблем и моментов оптимизации. В последние два дня праздника, хотя очень не хотелось трогать код, я все же молча включал компьютер из-за необходимости пообещать всем обновление до 🙄🙄.

Это обновление в основном добавляет следующие функции:

  • Поддержка развертывания кластера
  • Добавлено отображение времени развертывания
  • Оптимизирована конфигурация пароля в конфигурационном файле (вам не нужно писать пароль в конфигурационном файле, вы можете ввести его динамически во время развертывания)
  • Вы не можете выполнить команду упаковки во время развертывания (удалите команду упаковки в файле конфигурации)

Конечно, все обновления обратно совместимы с предыдущими файлами конфигурации, так что вы можете с уверенностью их обновить и использовать. Пожалуйста, прочтите текст ниже, чтобы ознакомиться с тем, как использовать этот инструмент.

deploy-cli-service

Интерфейсная служба автоматизированного развертывания одним щелчком мыши поддерживает разработку, тестирование и конфигурацию рабочей среды с несколькими средами. После настройки развертывание может быть автоматически завершено одним щелчком мыши.

1 установка

"Установите службу deploy-cli глобально"

npm install deploy-cli-service -g

"Установите службу deploy-cli локально"

npm install deploy-cli-service --save-dev

"Проверить версию, указав, что установка прошла успешно"

deploy-cli-service -v

"Примечание. При локальной установке необходимо добавить npx перед вызовом"

npx deploy-cli-service -v

2 Использование (далее в качестве примера используется глобальная установка)

"2.1 Просмотр справки"

deploy-cli-service -h

"2.2 Инициализировать файл конфигурации (в каталоге проекта)"

deploy-cli-service init # 或者使用简写 deploy-cli-service i

Заполните содержимое в соответствии с подсказками, и файл deploy.config.js будет сгенерирован в корневом каталоге проекта.Первоначальная конфигурация будет генерировать только три конфигурации: dev (среда разработки), test (тестовая среда) и prod ( производственная среда), а также доступны другие конфигурации. Обратитесь к шаблону, чтобы настроить его самостоятельно.

"2.3 Вручную создавать или изменять файлы конфигурации"

Файл конфигурации можно создать вручную без использования приведенной выше команды инициализации. Создается вручную в корневом каталоге проектаdeploy.config.jsFile, скопируйте следующий код, чтобы изменить его.

module.exports = {
  projectName: 'vue_samples', // 项目名称
  privateKey: '/Users/fuchengwei/.ssh/id_rsa',
  passphrase: '',
  cluster: [], // 集群部署配置,要同时部署多台配置此属性如: ['dev', 'test', 'prod']
  dev: {
    // 环境对象
    name: '开发环境', // 环境名称
    script: 'npm run build', // 打包命令
    host: '192.168.0.1', // 服务器地址
    port: 22, // 服务器端口号
    username: 'root', // 服务器登录用户名
    password: '123456', // 服务器登录密码
    distPath: 'dist', // 本地打包生成目录
    webDir: '/usr/local/nginx/html', // 服务器部署路径(不可为空或'/')
    isRemoveRemoteFile: true // 是否删除远程文件(默认true)
  },
  test: {
    // 环境对象
    name: '测试环境', // 环境名称
    script: 'npm run build:test', // 打包命令
    host: '192.168.0.1', // 服务器地址
    port: 22, // 服务器端口号
    username: 'root', // 服务器登录用户名
    password: '123456', // 服务器登录密码
    distPath: 'dist', // 本地打包生成目录
    webDir: '/usr/local/nginx/html', // 服务器部署路径(不可为空或'/')
    isRemoveRemoteFile: true // 是否删除远程文件(默认true)
  },
  prod: {
    // 环境对象
    name: '生产环境', // 环境名称
    script: 'npm run build:prod', // 打包命令
    host: '192.168.0.1', // 服务器地址
    port: 22, // 服务器端口号
    username: 'root', // 服务器登录用户名
    password: '123456', // 服务器登录密码
    distPath: 'dist', // 本地打包生成目录
    webDir: '/usr/local/nginx/html', // 服务器部署路径(不可为空或'/')
    isRemoveRemoteFile: true // 是否删除远程文件(默认true)
  }
}

"2.4 Развертывание (в каталоге проекта)"

Примечание: вам нужно добавить после команды--modeОбъекты окружающей среды (например:"--mode dev")

deploy-cli-service deploy --mode dev # 或者使用 deploy-cli-service d --mode dev

войтиYили нажмитеEnterПосле нажатия кнопки для подтверждения начнется автоматическое развертывание, и следующий запрос укажет, что развертывание завершено.

"2.5 Развертывание кластера (в каталоге проекта)"

Примечание. Конфигурация кластера должна бытьdeploy-cli-serviceВыделятьclusterполя (например:cluster: ['dev', 'test', 'prod'])

deploy-cli-service deploy # 或者使用 deploy-cli-service d

войтиYПосле подтверждения может начаться автоматическое развертывание, и следующие подсказки указывают на то, что развертывание завершено.

"2.6 Оптимизация обновлений"

Если вы не хотите сохранять пароль сервера в файле конфигурации, вы также можете удалить его в файле конфигурации.passwordполе. При развертывании появится интерфейс ввода пароля.

Если вы не хотите выполнять команду упаковки перед развертыванием, удалите ее в файле конфигурации.scriptполе.

"2.7 Локальная установка расширений"

Если вы используете локальную команду установки, вы можете в корневом каталоге проектаpackage.jsonв файлеscriptsДобавьте в скрипт следующий код

"scripts": {
  "serve": "vue-cli-service serve",
  "build": "vue-cli-service build",
  "lint": "vue-cli-service lint",
  "deploy": "deploy-cli-service deploy",
  "deploy:dev": "deploy-cli-service deploy --mode dev",
  "deploy:test": "deploy-cli-service deploy --mode test",
  "deploy:prod": "deploy-cli-service deploy --mode prod"
}

Затем используйте следующий код для завершения операции развертывания.

npm run deploy:dev

Наконец, если вы считаете, что это хорошо и просто в использовании, пожалуйста, дайте ему звезду 😜😜😜.