/ansible-container

Ansible Container is a tool to build Docker images and orchestrate containers using only Ansible playbooks.

Primary LanguagePythonGNU Lesser General Public License v3.0LGPL-3.0

Build Status Code Coverage

Ansible Container

Ansible Container is a tool for building Docker images and orchestrating containers using Ansible playbooks.

How it works

Use Ansible Container to manage the container lifecycle from development, through testing, to production:

  • ansible-container init

    Creates files in the current directory to get you started. Read the comments, and edit to suit your needs.

  • ansible-container install

    Downloads Ansible-Container-ready roles from Ansible Galaxy, and installs them in your project.

  • ansible-container build

    Creates images from your Ansible playbooks.

  • ansible-container run

    Launches the containers specified in the orchestration document, container.yml, for testing the built images. The format of container.yml is nearly identical to Docker Compose.

  • ansible-container deploy

    Pushes the project's container images to a registry of your choice, and generates a playbook capable of deploying the project on a supported cloud provider.

Installing

Install using pip, the Python package manager:

$ sudo pip install "ansible-container[docker,openshift]"

Or, to install without root privileges, use virtualenv to first create a Python sandbox:

$ virtualenv ansible-container
$ source ansible-container/bin/activate
$ pip install "ansible-container[docker,openshift]"

For more details, prerequisite, and instructions on installing the latest development release, please view our Installation Guide.

Getting started

For examples and a quick tour of Ansible Container visit Getting Started at our docs site.

Visit the Ansible Container Demo for a complete walk-through of managing an application from development through cloud deployment.

Get Involved

Branch Information

  • The develop branch is the release actively under development.
  • The master branch corresponds to the latest stable release available at PyPi.
  • Submit pull requests for bug fixes and new features to develop.
  • View the roadmap for a list of features currently under development.
  • Contributors welcome! Get started by reviewing CONTRIBUTORS.md.

Authors

View AUTHORS for a list contributors to Ansible Container. Thanks everyone!

Ansible Container is an Ansible by Red Hat sponsored project.