All Projects → truewebartisans → useful-playbooks

truewebartisans / useful-playbooks

Licence: MIT license
🚚 Useful Ansible playbooks for easily deploy your website or webapp to absolutely fresh remote virtual server and automation many processes. Only 3 minutes from the playbook run to complete setup server and start it.

Projects that are alternatives of or similar to useful-playbooks

Ansible Rails
Ansible: Ruby on Rails Server
Stars: ✭ 317 (+509.62%)
Mutual labels:  ansible-playbook, deployment, ansible-playbooks
Cipi
An Open Source Control Panel for your Cloud! Deploy and manage LEMP apps in one click!
Stars: ✭ 376 (+623.08%)
Mutual labels:  deployment, deploy, vps
Meli
Platform for deploying static sites and frontend applications easily. Automatic SSL, deploy previews, reverse proxy, and more.
Stars: ✭ 2,125 (+3986.54%)
Mutual labels:  deployment, deploy, deployment-automation
Centos7 Cis
Ansible CentOS 7 - CIS Benchmark Hardening Script
Stars: ✭ 64 (+23.08%)
Mutual labels:  ansible-playbook, ansible-playbooks
lykops
lykops是一套web可视化的运维自动化项目,基于python3+django开发的。可视化、简化执行ansible任务,并提供详细的任务执行报告。
Stars: ✭ 129 (+148.08%)
Mutual labels:  ansible-playbook, ansible-playbooks
Ansible Roles
Ansible Roles
Stars: ✭ 375 (+621.15%)
Mutual labels:  ansible-playbook, ansible-playbooks
Rocket
Automated software delivery as fast and easy as possible 🚀
Stars: ✭ 217 (+317.31%)
Mutual labels:  deployment, deploy
kafkaer
Template based Kafka topic/cluster/ACL management
Stars: ✭ 37 (-28.85%)
Mutual labels:  deployment, deployment-automation
ansible-palybooks
Ansible Palybooks Written and Published by www.server-computer.com. NO WARRANTY for any damages and loss of data.
Stars: ✭ 24 (-53.85%)
Mutual labels:  ansible-playbook, ansible-playbooks
yoda
Simple tool to dockerize and manage deployment of your project
Stars: ✭ 69 (+32.69%)
Mutual labels:  deployment, deploy
QLD
A graphical tool to make the deploying of Qt quick applications on linux platform faster
Stars: ✭ 18 (-65.38%)
Mutual labels:  deployment, deploy
RHEL7-CIS
Ansible RHEL 7 - CIS Benchmark Hardening Script
Stars: ✭ 28 (-46.15%)
Mutual labels:  ansible-playbook, ansible-playbooks
Git Auto Deploy
Deploy your GitHub, GitLab or Bitbucket projects automatically on Git push events or web hooks
Stars: ✭ 251 (+382.69%)
Mutual labels:  deployment, deploy
Cqtdeployer
This project is used to deploy applications written using QML, qt or other С / С++ frameworks.
Stars: ✭ 225 (+332.69%)
Mutual labels:  deployment, deploy
cfn-deploy
A useful GitHub Action to help you deploy cloudformation templates
Stars: ✭ 14 (-73.08%)
Mutual labels:  deploy, deployment-automation
docker-wordmove
Docker image to run Wordmove
Stars: ✭ 16 (-69.23%)
Mutual labels:  deployment, deploy
dropship
Super simple deployment tool
Stars: ✭ 62 (+19.23%)
Mutual labels:  deployment, deploy
takomo
Organize, parameterize and deploy your CloudFormation stacks
Stars: ✭ 27 (-48.08%)
Mutual labels:  deploy, deployment-automation
Deploy
Ansible role to deploy scripting applications like PHP, Python, Ruby, etc. in a capistrano style
Stars: ✭ 2,141 (+4017.31%)
Mutual labels:  deployment, deploy
Procsd
Manage your application processes in production hassle-free like Heroku CLI with Procfile and Systemd
Stars: ✭ 181 (+248.08%)
Mutual labels:  deployment, vps

🚚 Useful playbooks for easily deploy

logo

Useful Ansible playbooks for easily deploy your website or webapp to absolutely fresh virtual server (VDS/VPS or Droplet) launched on GNU/Linux. Only 3 minutes from the playbook run to complete setup server and start it. There you go! It just works.

⚡️ Quick start

  1. Download ZIP archive or git clone this repository.
  2. Go to the downloaded or cloned folder.
  3. Select a playbook (see Available playbooks section).
  4. Run <playbook_name> with (or without) arguments and extra vars:
ansible-playbook <playbook_name>-playbook.yml [args] [extra vars...]
  1. Enjoy! 😎

📚 Available playbooks

  • 📖 new_server for auto configure a fresh remote virtual server
  • 📖 install_brotli for install Brotli module to Nginx
  • 📖 create_ssl for create a new website with SSL certificate from Let's Encrypt
  • 📖 github_backup for a backup automation of your GitHub accounts (repositories, gists, organizations)

💡 Required information about Ansible

🤔 What is Ansible?

Follow Wikipedia page:

ansible logo

Ansible is an open-source software provisioning, configuration management, and application-deployment tool enabling infrastructure as code. It runs on many Unix-like systems, and can configure both Unix-like systems as well as Microsoft Windows. It includes its own declarative language to describe system configuration.

Ansible was written by Michael DeHaan and acquired by Red Hat in 2015. Ansible is agentless, temporarily connecting remotely via SSH or Windows Remote Management (allowing remote PowerShell execution) to do its tasks.

👀 Why it's so good to use for me?

Ansible is a radically simple IT automation system. It handles configuration management, application deployment, cloud provisioning, ad-hoc task execution, network automation, and multi-node orchestration. Ansible makes complex changes like zero-downtime rolling updates with load balancers easy.

  • Have a dead simple setup process and a minimal learning curve.
  • Manage machines very quickly and in parallel.
  • Avoid custom-agents and additional open ports, be agentless by leveraging the existing SSH daemon.
  • Describe infrastructure in a language that is both machine and human friendly.
  • Focus on security and easy auditability/review/rewriting of content.
  • Manage new remote machines instantly, without bootstrapping any software.
  • Allow module development in any dynamic language, not just Python.
  • Be usable as non-root.
  • Be the easiest IT automation system to use, ever.

:octocat: GitHub: https://github.com/ansible/ansible

🎯 How to work with Ansible and playbooks?
  1. Be sure, that Python (version 3.5 or later) is installed.
  2. Install Ansible for your OS by this instructions.
  3. Setting up inventory by this guide.
Helpful hints, tools and plugins for working with Ansible

VS Code addons:

  • vscode-ansible for code completion, syntax highlighting and linting of Ansible playbooks files
  • vscode-nginx for syntax highlighting of Nginx configs

VS Code config hints:

For better readability, please add two association to your .vscode/settings.json:

  1. For Ansible playbooks
  2. For jinja2 templates (which uses for Nginx configs)
{
  // ...
  "files.associations": {
    // ...
    "*-domain.j*2": "NGINX", // for all jinja2 files ended with `domain` word
    "*playbook.y*ml": "ansible" // for YAML files ended with `playbook` word
  }
  // ...
}

Beautify Ansible outputs:

Since Ansible v2.5.x, you can enable beautify output by callback_plugins and auto convert this one line output:

TASK [Get SSL for domain] *******************************
fatal: [***]: FAILED! => {"changed": true, "cmd": ["certbot", "--nginx", "certonly", "--agree-tos", "-m", "[email protected]", "-d", "example.com", "-d", "www.example.com", "--dry-run"], "delta": "***", "end": "***", "msg": "non-zero return code", "rc": 1, "start": "***", "stderr": "..." ...

To awesome structured, like this:

TASK [Get SSL for domain] *******************************
fatal: [***]: FAILED! => changed=true
  cmd:
  - certbot
  - --nginx
  - certonly
  - --agree-tos
  - -m
  - [email protected]
  - -d
  - example.com
  - -d
  - www.example.com
  - --dry-run
  delta: '***'
  end: '***'
  msg: non-zero return code
  rc: 1
  start: '***'
  stderr: ...
  ...

To use it, please, edit the [defaults] section in your Ansible config file (/etc/ansible/ansible.cfg):

[defaults]
stdout_callback = yaml       # Use the YAML callback plugin
bin_ansible_callbacks = True # Use the stdout_callback when running ad-hoc commands

📺 Media

A list of articles and video lessons, where useful-playbooks is used:

Make pull request with links to your articles and videos! We will post them right here.

⭐️ Project assistance

If you want to say thank you or/and support active development useful-playbooks:

  1. Add a :octocat: GitHub Star to the project.
  2. Twit about project on your Twitter.
  3. Donate some money to project author via PayPal: @paypal.me/koddr.
  4. Join DigitalOcean at our referral link (your profit is $100 and we get $25).
  5. Buy awesome domain name with 5% discount at REG.COM.

Thanks for your support! 😘 Together, we make this project better every day.

⚠️ License

MIT © Vic Shóstak & True web artisans.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].