Update the setup post to be more consistent.
All checks were successful
Build & Deploy / build-or-sth (push) Successful in 23s

This commit is contained in:
Emin Arslan 2025-01-09 23:06:11 +03:00
parent 3022f44f65
commit 20931357a2

View File

@ -11,7 +11,7 @@ draft = false
In this 'series' I will be walking you through my process of how I In this 'series' I will be walking you through my process of how I
host everything on this server. host everything on this server.
I'm currently running, on top of [my blog](https://emin.software), a [gogs I'm currently running, on top of [my blog](https://emin.software), a [gitea
instance](https://git.emin.software). instance](https://git.emin.software).
When first creating this website, I just had my blog. I generated this blog When first creating this website, I just had my blog. I generated this blog
@ -48,11 +48,10 @@ Here are some of the services I wanted to self-host:
- Web server: obviously, who doesn't want a website? - Web server: obviously, who doesn't want a website?
- Some git server: having my own place to show off all the things I've done is - Some git server: having my own place to show off all the things I've done is
certainly really cool. For this, something like [Gitea](https://about.gitea.com/) certainly really cool. For this, something like [Gitea](https://about.gitea.com/)
would normally be great. I went with [Gogs](https://gogs.io/) instead, because is absolutely great.
it is far more lightweight.
- Wireguard: Free VPN along with the website? sign me up. - Wireguard: Free VPN along with the website? sign me up.
- CI/CD: automatic testing and releases of my software is cool, and also - CI/CD: automatic testing and releases of my software is cool, and also
incredibly useful. incredibly useful. Gitea actions covers this, so I just ran that.
Of course, there are always more things I could be self-hosting. So it makes Of course, there are always more things I could be self-hosting. So it makes
sense to automate the setup, and that's where docker comes in. sense to automate the setup, and that's where docker comes in.
@ -113,8 +112,8 @@ $ docker rm <id>
Docker compose is a nice way to essentially "group together" some containers, Docker compose is a nice way to essentially "group together" some containers,
and ship them in an easy way. and ship them in an easy way.
Usually, on a server, each application *isn't* totally separate from each other Usually, on a server, each application *isn't* totally separate from each other -
- for my own use case, I want my git server (e.g. gogs) to automatically build for my own use case, I want my git server (e.g. gitea) to automatically build
and update my website whenever I push to its git repository. That means my git and update my website whenever I push to its git repository. That means my git
server and web server can't be *totally* separate, there's some amount of server and web server can't be *totally* separate, there's some amount of
relation. relation.
@ -138,7 +137,8 @@ services:
- 3000:80 - 3000:80
``` ```
Or you could even have *two* servers, like, a Gogs and a web server! Or you could even have *two* servers, like, a Gogs (another git server like Gitea)
and a web server!
```yaml ```yaml
services: services:
@ -146,7 +146,7 @@ services:
image: "nginx" image: "nginx"
ports: ports:
- 80:80 - 80:80
gogs-haha: gogs-example:
image: "gogs/gogs" image: "gogs/gogs"
ports: ports:
- 3000:3000 - 3000:3000
@ -155,8 +155,8 @@ services:
See how we got multiple services to run, very very easily? Isn't that just See how we got multiple services to run, very very easily? Isn't that just
really nice? You can just keep adding stuff. And compose even sets up dns for really nice? You can just keep adding stuff. And compose even sets up dns for
these containers! That means, for example, you can have your web server act as these containers. That means, for example, you can have your web server act as
a reverse proxy by having it access http://gogs-haha:3000 in the above config! a reverse proxy by having it access http://gogs-example:3000 in the above config!
It just works! It just works!
Of course, you can add volumes to tie it all, and 'secrets' to manage sensitive Of course, you can add volumes to tie it all, and 'secrets' to manage sensitive