5 ms·
I really believe that what I put into the book should be a knowledge a person deploying production application should have. > I just don't think small startups
by strzibny 5y ago
I really believe that what I put into the book should be a knowledge a person deploying production application should have.
> I just don't think small startups or side-projects should spend so much time getting all the configuration and moving parts right compared to just Docker+Terraform+(IaaS of choice).
It's the opposite actually! I show you how to avoid a lot of indirection and have a deploy script in 200 lines of Bash that you understand in an afternoon.
If you choose to use Docker, I have a full chapter of building containers, doing Docker networking, running containers with the Docker engine or with Podman like any other systemd service.
You can then write a small Bash script to install Docker and deploy your container or write an abstraction in a tool like Ansible. That's your choice and I think I present good arguments for both.
> deploy with bespoke Bash scripts is borderline irresponsible
Only like 5% of the book spends time talking about how to glue everything with Bash. Most is networking, permissions, configuration. The idea is to see how things are done with the most basic building block which is a shell.
The thing is shell code is how you interact with your operating system unless you are using C API. It's what most deployment tools use under the hood, not to mention that many tools are basically Bash (ruby-install, chruby) or based around executing it (Dockerfile).
> However it seems more like it would be a better guide as "Linux Servers from Scratch"?
I already renamed the book twice :). Not anymore, please ;). Most people actually told me they don't care for the name at all. Yes, there is a lot of Linux, but I named it after the intent. The intent is to deploy at the end. The fact that most of the deployment is configuration is implementation detail.
- no_circuit 5y agoFair enough. :-) Like I said, my impression is that the content seems good! What I can't tell, without reading it, is what the end state of the dev/ops architecture would be along with its maintenance requirements, to understand if it would be a good complete resource to refer to beginners in tech I can't assist myself.
- strzibny 5y agoThe main idea is building a single server deployment in a secure and maintainable way... and then possibly taking it to 5-10 servers at which point the Bash-only approach is less than ideal (but possible). Then you can pick a better tool of your choice (Ansible, Docker Swarm), but learning it is outside the scope of the book. The demonstrations are made alongside the indie hackers/early-stage startup mindset. Run a single server, or possibly single server with a dedicated database.