Git Product home page Git Product logo

docker-compose-ansible's Introduction

docker-compose-ansible

Ansible role to deploy applications via docker-compose.

Requirements

The deploying host which is running the playbook should have at least Ansible 2.3 so that the bug with copy module not preserving permissions is fixed.

The target host should have docker, docker-compose and the python library docker-py installed.

Role Variables

  • code_source: 'local' or git. Set to local to get source code from the host machine, or git from a git repository.
  • git_repo: URL for a git repository.
  • get_local_commit: If code_source is set to git and this is set to true, will get a commit from the local directory instead of using a branch.
  • git_repo_version: If code_source is set to git, specify a commit or branch name to deploy
  • docker_compose_files: An array of docker-compose files to use to deploy
  • local_path: if code_source is local or if get_local_commit is true, the path to the local source code.
  • project_directory: The path on the target host to deploy source code to.
  • remove_volumes: Set to yes to remove existing volumes while deploying. Defaults to no.
  • pull_images: Set to True to pull images from a registry before creating the containers. Defaults to True.
  • build_images: Set to True to build images for containers. Defaults to True.
  • docker_become: Set to True to become with docker commands.

Example Playbook

---
- name: "Deploy Application"
  hosts: all
  roles:
    - role: docker_compose_deploy
      code_source: 'local'
      project_directory: "/home/{{ ansible_user_id }}/app"
      local_path: "{{ playbook_dir }}/app"

License

Apache 2.0

TODO

Write tests

docker-compose-ansible's People

Contributors

lawliet89 avatar xkjyeah avatar ikabdyushev avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.