Rancher Compose
Docker compose compatible client that deploys to Rancher.
Binaries
Binaries are available for Linux, OS X, and Windows. Refer to the latest release.
Building
Run make build
to create ./bin/rancher-compose
Usage:
Usage: rancher-compose [OPTIONS] COMMAND [arg...]
Docker-compose to Rancher
Version: v0.8.4
Author:
Rancher Labs, Inc.
Options:
--verbose, --debug
--file, -f [--file option --file option] Specify one or more alternate compose files (default: docker-compose.yml) [$COMPOSE_FILE]
--project-name, -p Specify an alternate project name (default: directory name)
--url Specify the Rancher API endpoint URL [$RANCHER_URL]
--access-key Specify Rancher API access key [$RANCHER_ACCESS_KEY]
--secret-key Specify Rancher API secret key [$RANCHER_SECRET_KEY]
--rancher-file, -r Specify an alternate Rancher compose file (default: rancher-compose.yml)
--env-file, -e Specify a file from which to read environment variables
--help, -h show help
--version, -v print the version
Commands:
create Create all services but do not start
up Bring all services up
start Start services
logs Get service logs
restart Restart services
stop, down Stop services
scale Scale services
rm Delete services
pull Pulls images for services
upgrade Perform rolling upgrade between services
help, h Shows a list of commands or help for one command
Compose compatibility
rancher-compose
strives to be completely compatible with Docker Compose. Since rancher-compose
is largely focused
on running production workloads some behaviors between Docker Compose and Rancher Compose are different.
Deleting Services/Container
rancher-compose
will not delete things by default. This means that if you do two up
commands in a row, the second up
will
do nothing. This is because the first up will create everything and leave it running. Even if you do not pass -d
to up
,
rancher-compose
will not delete your services. To delete a service you must use rm
.
Builds
Docker builds are supported in two ways. First is to set build:
to a git or HTTP URL that is compatible with the remote parameter in https://docs.docker.com/reference/api/docker_remote_api_v1.18/#build-image-from-a-dockerfile. The second approach is to set build:
to a local directory and the build context will be uploaded to S3 and then built on demand on each node.
For S3 based builds to work you must setup AWS credentials.
Contact
For bugs, questions, comments, corrections, suggestions, etc., open an issue in
rancher/rancher with a title starting with [rancher-compose]
.
Or just click here to create a new issue.
License
Copyright (c) 2014-2015 Rancher Labs, Inc.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.