3 ms·
Since this is a side project, it depends on what you want to learn at the end of the day. You could invest in learning the tools that bigger teams are using, l
by rudasn 5y ago
Since this is a side project, it depends on what you want to learn at the end of the day.
You could invest in learning the tools that bigger teams are using, like kubernetes, or cloud-specific offerings, like AWS Fargate or whatever, but my guess is that if you don't already use those tools for your day job you may end up spending more time on "how to deploy" as opposed to actually having something to deploy.
A simpler approach would be to focus on sharpening your existing skills, or perhaps using one or two additional tools that get the job done without too much fanfare.
For example, if you already use git you could learn how to setup your own git server with hooks, so that you can just `git push production v0.0.2` to your own server to deploy your application.
Personally I find docker a very nice tool for both development and production as it allows me to quickly try out new things without messing up with my dev or prod machines. There's a lot of things to learn (if you aren't familiar with it yet), and it's best to start from the basics (networks, volumes, container lifecycle) and later move on to more complicated stuff, if and when, needed (swarm).
Just keep in mind what your end goal is: if your side project is more about learning how to deploy real-world apps at scale then yes, kubernetes and cloud-specific technologies may be the best approach. If you just want to get your code out there and used by other people you can easily get away with `git pull && npm start`.
- jcuenod 5y agoThis is helpful, thanks. Software is only a hobby for me so you're right, I want to be deploying more than figuring out how to deploy. I'm a curious person, though, so if it's worth learning k8s, I'll do it. At the same time, k8s doesn't seem like the right tool for this job and sometimes the devops people on HN feel a bit like craftsmen with only one tool that makes every problem look like a nail. v. 1 of my project uses `git push googlecloud` for deployments and I have git hooks that rebuild on push. I have been using docker more and more, though, which is making me interested in swarm as a deploy target (I've also thought of just using docker-compose to push).