https://github.com/deferpanic/dpcli
DeferPanic.Net Unikernel IaaS Client
https://github.com/deferpanic/dpcli
Last synced: 4 months ago
JSON representation
DeferPanic.Net Unikernel IaaS Client
- Host: GitHub
- URL: https://github.com/deferpanic/dpcli
- Owner: deferpanic
- License: mit
- Created: 2016-03-30T15:40:15.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2018-04-07T16:39:56.000Z (about 8 years ago)
- Last Synced: 2024-06-20T13:40:40.456Z (about 2 years ago)
- Language: Go
- Size: 59.6 KB
- Stars: 5
- Watchers: 6
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# dpli
DeferPanic.Net Unikernel IaaS Client
Website: https://deferpanic.com
[](https://app.wercker.com/project/bykey/44ace461901cac92c53e919de5d7e5e2)
## Quick Start:
This will create an account for you and auto-log you in through the API:
```
./dpcli users create joe@bob.com joebob password
```
## Authentication:
You'll need an account so go sign up at https://deferpanic.com/signup if you haven't created it through the API.
Then you can find your API token @ https://deferpanic.com/home/settings.
You can either pass your token in with the -token flag or you maybe
stick it in ~/.dprc.
Example if using the token flag:
```
./dpcli --token="TOKEN"
```
- [Installing](#user-content-build)
- [Projects](#user-content-projects)
- [Instances](#user-content-instances)
- [Volumes](#user-content-volumes)
- [IPs](#user-content-ips)
- [Backups](#user-content-backups)
- [Resources](#user-content-resources)
- [Addons](#user-content-addons)
- [Languages](#user-content-languages)
- [Compilers](#user-content-compilers)
- [Builds](#user-content-builds)
## Dependencies:
```
go get gopkg.in/alecthomas/kingpin.v2
go get github.com/olekukonko/tablewriter
```
## Build
```
cd dpcli && go build && go install
```
## Projects
### Create from Repository
```
dpcli projects new myproject php rumprun https://github.com/deferpanic/php_example
```
### Create from Image Binary
```
```
### Fork an Existing Project
### Clone an Addon
### Remove
```
dpcli projects delete myproject
```
### List
```
dpcli projects list
```
### View Log
```
dpcli projects log myproject
```
### Download image
```
./dpcli projects download myproject .
```
### Download manifest
```
./dpcli projects manifest myproject
```
## Instances
### Create
```
./dpcli instances new myproject
```
### Log of Individual Instance
```
./dpcli instances log gregory-jennifer.deferpanic.com
```
### List all Instances
```
./dpcli instances list
```
### List of Instances attached to Image/Project
```
./dpcli instances list myproject
```
### Pause
```
./dpcli instances pause gregory-jennifer.deferpanic.com
```
### Resume
```
./dpcli instances resume gregory-jennifer.deferpanic.com
```
### ScaleUp
```
./dpcli instances scaleup myproject
```
### ScaleDown
```
./dpcli instances scaledown myproject gregory-jennifer.deferpanic.com
```
## Volumes
### List By Domain
```
./dpcli volumes list --domain=stephen-anna.deferpanic.com
```
### List by Image Name
```
./dpcli volumes list --name=text
```
### Download Volume
Note: To download a volume you currently need to pause the instance.
(Live volume streaming coming soon.)
Pause the instance
```
./dpcli instances pause my_cname.deferpanic.com
```
```
./dpcli volumes download id
```
## IPs
### Request
```
./dpcli ips request
```
### Release
```
./dpcli ips release 1.2.3.4
```
### Attach
```
./dpcli ips attach 1.2.3.4 stephen-anna.deferpanic.com
```
### Detach
```
./dpcli ips detach 1.2.3.4
```
### List
```
./dpcli ips list
```
## Backups
### Save
Pause the instance
(Live Backups coming soon.)
```
./dpcli instances pause gregory-jennifer.deferpanic.com
```
Back it up
```
./dpcli backups save myproject gregory-jennifer.deferpanic.com
```
### Restore
Pause the instance
```
./dpcli instances pause gregory-jennifer.deferpanic.com
```
Back it up
```
./dpcli backups restore myproject gregory-jennifer.deferpanic.com
```
### List
```
./dpcli backups list
```
## Languages
### List
```
./dpcli languages
```
## Compilers
### List
```
./dpcli compilers
```
## Builds
### List
```
./dpcli builds list projectId
```
### Latest
```
./dpcli builds latest projectId
```
### Show
```
./dpcli builds show buildId
```
## Resources
### Create
### List
To see all your provisioned resources:
```
./dpcli resources list
```
To see the resources attached to a given project:
```
./dpcli resources list myproject
```
### Available
To see the available resources:
```
./dpcli --token="TOKEN" resources available
```
## Addons
To see the available addons:
```
dpcli --token="TOKEN" addons
```
## Status
```
dpcli status
```
## Version
```
dpcli version
```
## Examples
[Static Website](https://github.com/deferpanic/html_example)
[Php](https://github.com/deferpanic/php_example)
[Php with Redis](https://github.com/vsukhin/phprumpredis)
[Php with Mysql](https://github.com/vsukhin/phprumpmysql)
[Ruby and Sinatra](https://github.com/deferpanic/ruby_example)
[Python](https://github.com/deferpanic/python_example)
[Node Js](https://github.com/vsukhin/nodejsrump)
[Go](https://github.com/deferpanic/go_example)
[Go with DeferPanic client](https://github.com/vsukhin/dpexample)
## Developing
Go 1.6 is Required.