Deprecated
The ansible-container project is now officially deprecated. We will no longer be maintaining this repo or accepting any issues or pull requests.
The ansible-container project did two things, broadly speaking: it built containers, and it deployed containers to Kubernetes. Now there are new successor projects that perform these tasks.
For people who have been using ansible-container to build containers, we recommend using the ansible-bender project: https://github.com/ansible-community/ansible-bender
For people who have been using ansible-container to deploy containers to Kubernetes, we recommend using Ansible Operators:
https://learn.openshift.com/ansibleop/ansible-operator-overview/
Thanks to all those who have used and contributed to ansible-container.
Original README below
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
- Visit Community Information and Contributing for all kinds of ways to contribute to and interact with the project. We welcome your feedback and ideas!
- Review CONTRIBUTORS.md, if you're considering submitting code.
- Join the mailing list
- Open an issue
- Join the #ansible-container channel on irc.freenode.net.
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.