Free & Open: Deploy a Production Ready - Docker Swarm Cluster
This project provides a set of Ansible, Terraform, and Vagrant configuration files to deploy docker/native applications to a local/cloud environment. The deployment process includes setting up the necessary infrastructure, configuring servers, installing software, and starting the application. See our ROADMAP.md
for details.
To use this project, you will need the following:
- A cloud provider account with appropriate permissions to create and manage resources.
- Ansible, Terraform, Vagrant, and VirtualBox installed on your local machine.
- A valid SSH key pair for authenticating with the remote servers.
Here is an overview of the directory structure of this project:
deploy/
├── README.md
├── LICENSE.md
├── ROADMAP.md
├── website/*
├── docs/*
├── files/
│ └── ssh.key
├── group_vars/
│ └── global.yml
├── roles/
│ ├── app/
│ ├── common/
│ └── docker/
├── virtual/
│ ├── terraform/*
│ └── vagrant/*
├── architecture.png
├── deploy-single.yml
├── deploy-single.cfg
├── deploy-single.host
├── deploy-cluster.yml
├── deploy-cluster.cfg
└── deploy-cluster.host
To use this script, need to add extra value in command like this:
ansible-playbook -i deploy-cluster.cfg deploy-cluster.yml --tags "docker,rabbitmq" -e "var1=value1 var2=value2"
If you'd like to contribute to this project, please follow these steps:
- Fork this repository.
- Create a branch for your changes.
- Make your changes and commit them to your branch.
- Push your branch to your forked repository.
- Open a pull request to merge your changes into the main repository.
This project is licensed under the MIT License. See the LICENSE.md
file for details.