Skip to content

inventivehack/ansible-ghost

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Ansible playbook - Ghost

This project contains an Ansible playbook used for provisioning an Ubuntu 14.04 LTS server with the following characteristics:

  • NGINX as the web server
  • PostgreSQL as the DB engine.
  • Mailgun as the email service provider.
  • Upstart service for keeping the blog up and running.
  • HTTPS/SSL configuration ready to go.

Usage

These instructions will get you a deployable Ansible playbook that you can easily use for provisioning any Ubuntu server.

Prerequisites & Assumptions

You must have Ansible installed in your computer as well as an Ubuntu 14.04 LTS server with ssh public authentication enabled on it. You can easily create a public virtual server on any of the following services:

If you don't want to spend any cent by using this playbook, you can test it using a virtual machine. We've used a Vagrant for the testing and development of this playbook, this is how our Vagrantfile looks like:

Vagrant.configure("2") do |config|
  config.vm.box = "ubuntu/trusty64"
  config.vm.network "public_network"
  config.vm.provider "virtualbox" do |vb|
    vb.memory = "1024"
  end
end

You can get yours by simply running vagrant up after creating you Vagrantfile:

How to use

  1. Set up your inventory by creating a file name inventory (without any extension) in the root of the project. i.e:
[default]
10.15.42.4
10.15.42.3
...
  1. Make the play file an executable one:
chmod +x play
  1. Set up the variables
  2. Run:
./play

SSL/HTTPS support

Please refer to the vars section for more information.

Third party libraries/roles

Not Exactly What You Want?

This is what we use internally. It might not be what you want.

License

This project is licensed under the MIT License - see the LICENSE file for details

What's next for the project?

  • Multiple DB engines support:

    • MySQL
    • sqlite3
  • Let's encrypt integration for valid SSL certificates generation.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published