Open hamiltont opened 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?
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.
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 ofgit init
. This may be better if done as an option of setup (e.g.buster setup --clone
instead ofbuster 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.