Now that we have talked about the benefits of running your own server and how to run your own server let’s take a look at some things you could run on your own personal server and some things you should better not.
Host a code-server
code-server is an open-source application that allows you to run VSCode on your server and access it from any browser. It’s perfect for taking notes or journaling from anywhere, as you can access it from any device with a browser.
This very blog post was written in a setup like this.
If you want to take it one step further you could also create some cron jobs to automatically commit and push a repository with your notes to your git service of choice.
Host static website
Tools like hugo and other static site generators allow you to simply create and build static websites. Using a web server like nginx and acme.sh for certificates it is easy to host them on your own server.
Host your own instances of open source tools
There are many open-source tools available that you can host on your own server.
For example, you can host your own RSS aggregator, simple monitoring, or various APIs.
The awesome selfhosted list on GitHub contains a bunch of interesting and useful tools or you could join a community like r/selfhosted where people discuss self-hosted, mostly open source, alternatives to popular services.
This way, you can have more control over the tools you use and avoid sharing your data with third-party services.
Use it to quickly try out new tools
Are you interested in trying out new tools but don’t want to install them on your main machine? You can use your own server to try out new tools.
Using either Docker or Podman allows you to easily spin up a new environment and experiment with different applications without worrying about breaking your main machine. In addition this allows you to share the tools you test with different people since your server is publicly accessible.
Run cron jobs
Do you have scripts that automate things in your life?
You can run cron jobs on your own server to automate these scripts. For example, you can set up a cron job to back up your data, or to download your favorite podcasts automatically. In essence anything you can write a script for can now happen automatically in the background.
Keep in mind that you may want to monitor that your cron jobs are executed properly. Tools like healthchecks.io can help you with that.
Run a notification server
You can run your own notification server using open-source software. This way, you can receive notifications from your own scripts and applications without relying on third-party services.
I run a tool called ntfy.sh for this and wrote about my setup.
Things I would not recommend doing
While running your own server can be fun and empowering, there are some things I would not recommend doing.
For example, hosting your own mail server can be a complex and time-consuming task, and it can be hard to ensure that your emails don’t end up in spam folders.
Similarly, hosting your own document server like Nextcloud can be a challenging task, and it’s often easier to use a third-party services that take care of things like backups. If you are from Germany I can highly recommend the Managed Nextcloud from hosting.de for this task.
Lastly, it’s not recommended to host mission-critical applications on your own server, as it may not be as reliable as a dedicated cloud provider or hosting service.
In conclusion, there are many things you can do with your own server, from hosting a code-server to running cron jobs. However, it’s important to be aware of the limitations and avoid taking on tasks that are too complex or critical for your own server.
This is a multi part series, read more here:
Host your own server on DigitalOcean ($200 free credit with my referral code)