Ansible Playbook collection to:
- Setup Apache
- Clone Remote github Repositories
- Setup ElasticSearch
- Setup Erlang/Elixir
- Setup NodeJS
- Setup Phoenix
- Setup PhP
- Setup Redis
- Setup RVM
- Add SSH Keys
- Setup Mongodb
- Setup MySQL
- Setup Nginx as a reverse proxy for multiple sites with SSL
Run this command to run the playbook:
ansible-playbook -i inventory main.yml
Place your inventory
file in the directory you wish to your ansible commands in the following format
[remote_server]
your_ip_address_here ansible-connection=ssh ansible_ssh_user=username ansible_ssh_pash=password
[remote_server:vars]
yourvariables=variable-content
And setup your main.yml
to include the roles you want:
---
- hosts: remote_server
gather_facts: yes
become: yes
vars:
NODEJS_VERSION: "12"
ansible_distribution_release: "xenial"
nginx_revproxy_sites:
test.acuments.com: {appname: 'test', port: 5000, socket: true}
test1.acuments.com: {appname: 'test1', port: 3000, socket: false}
test2.acuments.com: {appname: 'test2', port: 4004, socket: false}
roles:
- ansible-apache
- ansible-clone-repo
- ansible elasticsearch
- ansible-mongodb
- ansible-phoenix
- ansible-php
- ansible-redis
- ansible-rvm
- ansible-ssh
- ansible-nodejs
- ansible-erlang-elixir
- ansible-phoenix
- ansible-mysql
- ansible-nginx
Add/Remove sites from the nginx_revproxy_sites
variable specifed in the main.yml. Specify socket: true
if your site is using socket connections.