axitkhurana / buster

Brute force static site generator for Ghost
MIT License
800 stars 139 forks source link

Integrate buster and docker container engine #17

Open hamiltont opened 10 years ago

hamiltont commented 10 years ago

Heyo,

I wanted a one-off command that could install+run buster. This does that using docker, which acts as a lightweight virtual environment. It 1) installs buster 2) downloads the site 3) runs buster and 4) deploys. Github tokens are used to avoid people accidentally putting their private key online. There is enough documentation added to explain how to run this while avoiding imposing on people not interested.

The primary advantage is anyone with docker installed can now use buster on any Ghost site with this one command, without changing their system at all.

I have pushed a docker image to hamiltont/buster, but the docs I added reference axitkhurana/buster. You can easily register on index.docker.io and point them to your buster repository to have a "trusted build" performed (e.g. they clone your repo and build the container using the Dockerfile).

I've also added a setup-clone run mode that will perform setup using git clone instead of git init. This may be better if done as an option of setup (e.g. buster setup --clone instead of buster setup-clone). There is one TODO left in the setup-clone method, I'm not very familiar with GH pages so I may have misunderstood how to properly treat master/gh-pages e.g. a checkout may be needed here.

axitkhurana commented 10 years ago

Hey @hamiltont,

Sorry for the delay in response.

Don't you think using docker for a simple python script would be an overkill? Installation doesn't take much effort here, unless people don't have pip. Maybe I should package the script for apt-get and other package managers.

Few things I can take away from this request:

What do you think?

hamiltont commented 10 years ago

That sounds fine by me, especially the bit about having one command to do everything. This was part of me figuring out how to containerize every process on one of my hosts. While it was a fun experiment, its probably not worth it for most users as installing the deps is not a huge deal here. In time (as docker automation methods like fig are improved), there might be some minor scripting benefits, but thats a long way off. So I'm ok if you don't merge, I'll leave my fork up in case its useful to anyone.