Command line client for Carina, a container service that's currently in Beta.
There are downloads of the built binaries over in releases.
After downloading the version for your system, you'll probably need to rename it,
set it as executable, and put it on a PATH
you have:
$ mv carina-darwin-amd64 ~/bin/carina
$ chmod u+x ~/bin/carina
$ mv carina-linux-amd64 ~/bin/carina
$ chmod u+x ~/bin/carina
TODO: Instructions for Windows. Care to add some?
usage: carina [<flags>] <command> [<args> ...]
command line interface to launch and work with Docker Swarm clusters
Flags:
--help Show context-sensitive help (also try --help-long and --help-man).
--version Show application version.
--username=USERNAME Rackspace username - can also set env var RACKSPACE_USERNAME
--api-key=RACKSPACE_APIKEY
Rackspace API Key - can also set env var RACKSPACE_APIKEY
--endpoint="https://mycluster.rackspacecloud.com"
Carina API endpoint
Commands:
help [<command>...]
Show help.
list
list swarm clusters
get <cluster-name>
get information about a swarm cluster
delete <cluster-name>
delete a swarm cluster
rebuild <cluster-name>
rebuild a swarm cluster
create [<flags>] <cluster-name>
create a swarm cluster
--wait wait for swarm cluster completion
--nodes=1 number of nodes for the initial cluster
--autoscale whether autoscale is on or off
credentials [<flags>] <cluster-name>
download credentials
--path=PATH path to write credentials out to
grow --nodes=NODES <cluster-name>
Grow a cluster by the requested number of nodes
--nodes=NODES number of nodes to increase the cluster by
The build script assumes you're running go 1.5 or later. If not, upgrade or use something like gimme.
make carina
This creates carina
in the current directory (there is no make install
currently).
If you want it to build on prior releases of go, we'd need a PR to change up how
the Makefile
sets the LDFLAGS
conditionally based on Go version.
The release script relies on github-release. Get it, configure it.
Make sure you're on master
then run release.sh
with the next tag and release name.
./release.sh 0.2.0 "Acute Aquarius"
How do you pick the release name?
The hardest problem in computer science is picking names. For releases, we take an adjective attached combined with the next constellation from an alphabetical list of constellations. It can be alliterative if you like.