定制 koskey/laravel-digital-ocean-deployer 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

koskey/laravel-digital-ocean-deployer

最新稳定版本:1.2.2

Composer 安装命令:

composer require koskey/laravel-digital-ocean-deployer

包简介

A Laravel package for automated deployment to DigitalOcean servers

README 文档

README

A Laravel package for automated deployment to DigitalOcean servers using GitHub Actions.

Installation

You can install the package via composer:

composer require koskey/laravel-digital-ocean-deployer

Updating

To get the latest updates, run:

composer update koskey/laravel-digital-ocean-deployer

After updating, check the CHANGELOG.md for any breaking changes or new features.

If you've updated from version 1.0.0, you now have access to the new deployer:generate-key command for easier SSH key setup.

Important Update Notice for v1.2.2

If you're updating from a previous version, you need to republish the config file:

php artisan vendor:publish --provider="Koskey\LaravelDigitalOceanDeployer\DeployerServiceProvider" --tag="config" --force

This update changes how server configuration is handled, moving from environment variables to GitHub secrets directly.

Configuration

  1. Publish the configuration file:
php artisan vendor:publish --provider="Koskey\LaravelDigitalOceanDeployer\DeployerServiceProvider" --tag="config"
  1. Publish the GitHub workflow:
php artisan vendor:publish --provider="Koskey\LaravelDigitalOceanDeployer\DeployerServiceProvider" --tag="config"

Edit the config/deployer.php file to set your preferred branch name:

'repository' => [
    'provider' => 'github',
    'branch' => 'master', // Change this to your desired branch
],

Then publish the GitHub workflow with your configured branch:

php artisan deployer:publish-workflow
  1. Add the following environment variables to your GitHub repository secrets:
  • DO_HOST: Your DigitalOcean server hostname
  • DO_USERNAME: Your server username
  • DO_SSH_KEY: Your SSH private key (base64 encoded)
  • DO_PATH: Your application path on the server (default: /var/www/html)

Getting Your Base64 Encoded SSH Key

The package provides an easy way to get your base64 encoded SSH key. After installation, run:

php artisan deployer:generate-key

This command will:

  1. Find your SSH private key (usually in ~/.ssh/id_rsa)
  2. Convert it to base64 format
  3. Display both the encoded private key (for GitHub) and the public key (for your server)
  4. If no SSH key is found, it can generate a new key pair for you

You can also specify a custom path to your SSH key:

php artisan deployer:generate-key --path=/path/to/your/key

Add the base64 encoded output as the value for DO_SSH_KEY in your GitHub repository secrets.

Note: Make sure the corresponding public key is added to your DigitalOcean server's ~/.ssh/authorized_keys file.

Usage

The package will automatically deploy your application when you push to the main branch. You can also manually deploy using the artisan command:

php artisan deploy

Configuration Options

You can customize the deployment process by editing the config/deployer.php file:

  • Server configuration
  • Repository settings
  • Deployment steps
  • Custom hooks
  • File permissions

Contributing

Please see CONTRIBUTING.md for details.

License

The MIT License (MIT). Please see License File for more information.

统计信息

  • 总下载量: 16
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-12-26