iluminar / vps
一个 Laravel 5 软件包,用于在 Digital Ocean 上轻松创建和维护 VPS
Requires
- guzzlehttp/guzzle: ^6.2
This package is auto-updated.
Last update: 2022-07-08 03:02:44 UTC
README
beta 版本
一个 Laravel 5 软件包,用于在 Digital Ocean 上轻松创建和维护 VPS。尚未完成,请查看使用说明
$value = ["name"=> "test.com","region"=> "blr1","size"=> "512mb","image"=> "centos-7-2-x64"]; $result = VPS::droplet()->create($value);
我们刚刚在 Digital Ocean 上创建了一个 droplet。
$result = VPS::droplet($id)->delete();
我们刚刚通过传递我们的 droplet ID 删除了一个 droplet。
想要关闭一个 droplet 吗?
$result = VPS::droplet($id)->shutdown();
我们创建的所有 droplet 都有哪些?
$result = VPS::droplet()->all();
安装
您可以通过 composer 拉取此软件包
$ composer require iluminar/vps
或者您可以在 composer.json 中添加以下内容
"require": { "iluminar/vps": "dev-develop" }
然后在项目的根目录下,从终端运行以下命令
$ composer update
更新 composer 后,将 fluent 服务提供者添加到 config/app.php 文件中的 providers 数组。
'providers' => array( // ... Iluminar\VPS\Providers\VPSServiceProvider::class, )
然后在终端中运行以下命令
$ php artisan vendor:publish
配置
首先您需要获取一个 个人访问令牌 并将 DIGITAL_OCEAN_TOKEN
设置在 .env 文件中。
使用方法
在您的控制器中导入 VPS
门面
账户信息
$result = VPS::account();
获取操作信息
获取账户上执行的所有操作
$result = VPS::action()->all();
获取操作信息
$result = VPS::action()->find($id);
获取 droplet 信息
获取所有 droplet 的信息
$result = VPS::droplet()->all();
获取单个 droplet 的信息
$result = VPS::droplet()->find($id);
获取单个 droplet 的所有快照
$result = VPS::droplet($id)->snapshots();
获取单个 droplet 的所有备份
$result = VPS::droplet($id)->backups();
启用 droplet 的备份
$result = VPS::droplet($id)->enableBackups();
禁用 droplet 的备份
$result = VPS::droplet($id)->disableBackups();
重启 droplet
$result = VPS::droplet($id)->reboot();
重新启动 droplet
$result = VPS::droplet($id)->powerCycle();
关闭 droplet
$result = VPS::droplet($id)->shutdown();
关闭 droplet 的电源
$result = VPS::droplet($id)->powerOff();
打开 droplet 的电源
$result = VPS::droplet($id)->powerOn();
通过提供以前镜像的 ID 来恢复 droplet
$result = VPS::droplet($id)->restore();
调整 droplet 的大小,传递一个大小参数(1gb、2gb 等)。对于永久调整大小,还传递一个布尔值 true
$result = VPS::droplet($id)->resize('1gb'); $result = VPS::droplet($id)->resize('1gb', true); // permanent resize
重建 droplet,传递一个镜像 ID 或 slug 作为参数
$result = VPS::droplet($id)->rebuild($id); $result = VPS::droplet($id)->rebuild('ubuntu-14-04-x64'); // rebuild by image slug
重命名 droplet,传递一个字符串作为参数
$result = VPS::droplet($id)->rebuild('name');
在 droplet 上启用 ipv6
$result = VPS::droplet($id)->enableIPv6();
在 droplet 上启用私有网络
$result = VPS::droplet($id)->enablePrivateNetworking();
对 droplet 拍摄快照,传递一个字符串作为参数来命名快照
$result = VPS::droplet($id)->takeSnapshot('new nifty snapshot');
获取在此 droplet 上执行的操作信息
$result = VPS::droplet($id)->action($actionId);
获取镜像信息
列出所有镜像
$result = VPS::image()->all();
列出所有分发镜像
$result = VPS::image()->where(['type' => 'distribution']);
列出所有应用镜像
$result = VPS::image()->where(['type' => 'application']);
列出用户的所有私有镜像
$result = VPS::image()->where(['private' => 'true']);
获取单个镜像的信息
$result = VPS::image()->find($id);
通过 slug 获取单个镜像的信息
$result = VPS::image()->find('ubuntu-14-04-x64');
列出镜像的所有操作
$result = VPS::image($id)->actions();
重命名镜像
$result = VPS::image($id)->rename('new cool name');
删除镜像
$result = VPS::image($id)->delete();
将镜像转移到不同的区域
$result = VPS::image($id)->transfer('nyc1');
将镜像转换为快照
$result = VPS::image($id)->convert();
获取在镜像上执行的操作信息
$result = VPS::image($id)->action($actionId);
SSH密钥
列出与此账户关联的所有密钥
$result = VPS::ssh()->all();
将新的SSH密钥添加到您的账户
$result = VPS::ssh()->create(['name' => 'my-home-key', 'public_key' => "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAAAQQDDHr/jh2Jy"]);
通过密钥ID或指纹获取有关密钥的信息
$result = VPS::ssh()->find($id); // or $fingerprint instead of $id
重命名密钥
$result = VPS::ssh($id)->rename('new key name');
删除密钥
$result = VPS::ssh($id)->delete(); // $fingerprint can also be used instead of $id
文档
尚未添加。
待办事项
文档
错误处理
安全漏洞
如果您在软件包中发现安全漏洞,请将电子邮件发送至Nehal Hasnayeen(searching.nehal@gmail.com)。所有安全漏洞都将得到及时处理。
许可证
Iluminar\VPS是开源软件,许可协议为MIT许可证。
变更日志
请参阅CHANGELOG了解最近有哪些变更。
贡献者
由Hasnayeen创建,用爱心在完成。