Resin Cloud Deployment Reference
From Resin 3.0
- Deploying to a local server
- Deploying to a remote server
- Setting up a user and password
- Setting up a cloud topology
- Deploying to the Triad
- license-add enabling Resin features
- Deploy to a staging server
- Setting up load balancer to not to deploy to staging server
- Common tasks
- Deploying a new application deploy
- Listing current versions of deployed application
- Undeploying a new application
- Using deploy-copy to promote a release to production
- Using deploy-copy to rollback a release that was deployed to production
- Installing mysql driver for a web application using config-deploy
- Showing what is in remote config with config-list-ls and config-list-cat
- web-app-deploy settings
$ resinctl | grep deploy deploy - deploys an application deploy-copy - copies an application deploy-list - lists all deployed applications deploy-restart - restarts an application deploy-start - starts an application deploy-stop - stops an application undeploy - undeploys an application config-deploy - deploys configuration directory config-undeploy - undeploys a config $ resinctl | grep config config-deploy - deploys configuration directory config-copy - copies configuration config-list - lists all deployed configurations config-list-ls - list contents of config dir (ex. ./lib) config-list-cat - list contents of config file config-undeploy - undeploys a config
Deploying to a local server
Deploy commands available
$ resinctl help deploy Output: usage: bin/resin.sh [-conf <file>] [-server <id>] deploy -user <user> \ -password <password> [options] <war-file> description: deploys application specified in a <war-file> to resin server options: -conf <file> : resin configuration file -server <id> : id of a server -address <address> : ip or host name of the server -port <port> : server http port -user <user> : user name used for authentication to the server -password <password> : password used for authentication to the server -host <host> : virtual host to make application available on -name <name> : name of the context to deploy to, defaults to war-file name -stage <stage> : stage to deploy application to, defaults to production -version <version> : version of application formatted as <major.minor.micro.qualifier> -m <message> : commit message
Turning on versioning:
$ cat /etc/resin/resin.properties | grep deploy Output: deploy_versioning : true
$ sudo grep "web-app-deploy" -A 1 /etc/resin/resin.xml Output: <web-app-deploy path="webapps" versioning="${deploy_versioning}" expand-preserve-fileset="WEB-INF/work/**"/>
"if true, use the web-app's numeric suffix as a version"
Run deploy command passing location of war file.
$ resinctl deploy ./target/blog-0.1.0.war -name blog Output: Deployed production/webapp/default/blog from ./target/blog-0.1.0.war to hmux://127.0.0.1:6800
To see the deployed you can use resinctl deploy-list
$ resinctl deploy-list Output: production/webapp/default/blog
- TODO explain production/webapp/default/blog
- TODO add a table
- TODO explain how to start up a server with different staging servers
Now undeploy it:
$ resinctl undeploy blog Output: Undeployed blog from hmux://127.0.0.1:6800
At this point there should be nothing
$ resinctl deploy-list
Now deploy it with versioning:
$ resinctl deploy ./target/blog-0.1.0.BUILD-SNAPSHOT.war -name blog -version 0.1.0 Output: Deployed production/webapp/default/blog-0.1.0 from ./target/blog-0.1.0.BUILD-SNAPSHOT.war to hmux://127.0.0.1:6800
Blog application is under the version 0.1.0
$ resinctl deploy-list Output: production/webapp/default/blog-0.1.0
- TODO explain production/webapp/default/blog-0.1.0
- TODO add a table
- TODO explain how to start up a server with different staging servers