linkorb / libcloud-php
Unified API for compute, dns, objectstorage and other cloud services
Requires
- php: >=5.4
- symfony/http-foundation: ~2.7
Suggests
- hampel/linode: Connection to Linode
- linkorb/transip-php: Connection to Transip
- rackspace/php-opencloud: Connection to opencloud/Rackspace
- toin0u/digitalocean-v2: Connection to digital ocean
This package is auto-updated.
Last update: 2024-11-07 11:17:51 UTC
README
PHP library for interacting with many of the popular cloud service providers using a unified API.
Introduction
This project aims to simplify the usage of cloud services by PHP developers. The scope of the project includes the following service types:
- Compute: Create, Restart, Destroy and provision compute nodes in the cloud
- DNS: Update DNS configurations at DNS providers
- ObjectStorage: store objects in the cloud
- LoadBalancer: Manage load balancer configurations at your IaaS provider
- Container: Launch containers and manage images at CaaS providers
This project is inspired by the awesome Python library libcloud with the same name. We try to follow the design as closely as possible. We keep method names the same as the Python project, but updating it for PSR2 compliance.
Using the library in your project
libcloud-php is available on packagist. To use it, add the following to your composer.json
file, and run composer update
:
{ "require": { "linkorb/libcloud": "~1.0" } }
Examples
Please refer to the example directory for example code by service type (compute, dns, etc).
Contributing
Ready to build and improve on this repo? Excellent! Go ahead and fork/clone this repo and we're looking forward to your pull requests! Please take a look at the python version in order to follow this design, constants and method names as closely as possible, while updating it in the php-way.
TODO / Next steps:
We're planning on the following features. Please feel free to send us a PR if you're interested in helping out!
- Extend the support of this library for more providers and services
- Implement ObjectStorage interfaces and adapters based on linkorb/objectstorage
- Implement LoadBalancer and Container interfaces
License
MIT. Please refer to the license file for details.
Brought to you by the LinkORB Engineering team
Check out our other projects at linkorb.com/engineering.
Btw, we're hiring!