This an internal Docker-based deploy script for Meteor applications.
Dockerfile with which to publish.
package.json for deploy settings.
$ npm install -g deploy $ cd /path/to/meteor $ deploy
eval $(docker-machine env HOST) # HOST is in package.json docker images # find the image id of the version you want to revert to docker ps -a # note down the image name of the failed upgrade docker stop APPNAME # if needed docker rm APPNAME docker run -d --restart always \ --name APPNAME \ -p PORT_FROM_PACKAGE_JSON:3000 \ EXTRA_ARGS_FROM_PACKAGE_JSON \ IMAGE_ID docker rmi IMAGE_ID
Periodically you should delete old images as they are not removed automatically.
eval $(docker-machine env HOST) docker images # note old image ids docker rmi IMAGE_IDs