Dropped domain prefixes and unified container and network names

This commit is contained in:
2026-03-25 08:19:20 +01:00
parent 162fbabd26
commit b8b7baee0f
4 changed files with 53 additions and 53 deletions

View File

@@ -4,7 +4,7 @@ draft: false
title: "Let's start a blog!"
author: "Jirka"
tags: ["hugo", "idea", "guide", "tutorial"]
categories: ["blog", "idea"]
categories: ["documentation", "idea"]
description: "Behind the scenes of the idea and setup."
---

View File

@@ -183,10 +183,10 @@ Let's start by creating `docker-compose.yml`:
```yaml docker-compose.yml
# Shared network between containers (for later use)
networks:
jirkabuilds_proxy_network:
proxy_network:
services:
jirkabuilds_wireguard:
wireguard:
image: linuxserver/wireguard:latest
container_name: wireguard
cap_add:
@@ -199,13 +199,13 @@ services:
restart: unless-stopped
# We will add wireguard to this network, but limit access from WG itself
networks:
- jirkabuilds_proxy_network
- proxy_network
jirkabuilds_caddy:
caddy:
image: caddy:latest
container_name: jirkabuilds_caddy
container_name: caddy
# Caddy shares all networks with WireGuard
network_mode: "service:jirkabuilds_wireguard"
network_mode: "service:wireguard"
volumes:
- ./caddy/Caddyfile:/etc/caddy/Caddyfile
- ./site_data:/srv

View File

@@ -37,7 +37,7 @@ mv * web
Now create new `docker-compose.yml` file with following content:
```yaml
networks:
jirkabuilds_proxy_network:
proxy_network:
include:
- web/docker-compose.yml
@@ -56,24 +56,24 @@ And you should be back online.
Create new directory `gitea` for Gitea and it's data an into it create new `docker-compose.yml` file with following content:
```yaml
networks:
gitea-internal:
jirkabuilds_proxy_network:
gitea_internal:
proxy_network:
services:
jirkabuilds_gitea:
gitea:
image: docker.gitea.com/gitea:latest
container_name: jirkabuilds_gitea
container_name: gitea
environment:
- USER_UID=${APP_UID}
- USER_GID=${APP_GID}
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=jirkabuilds_gitea_db:5432
- GITEA__database__HOST=gitea_db:5432
- GITEA__database__NAME=${DB_NAME}
- GITEA__database__USER=${DB_USER}
- GITEA__database__PASSWD=${DB_PASSWORD}
restart: always
networks:
- gitea-internal
- gitea_internal
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
@@ -84,7 +84,7 @@ services:
depends_on:
- db
jirkabuilds_gitea_db:
gitea_db:
image: docker.io/library/postgres:14
restart: always
environment:
@@ -92,7 +92,7 @@ services:
- POSTGRES_PASSWORD=${DB_PASSWORD}
- POSTGRES_DB=${DB_NAME}
networks:
- gitea-internal
- gitea_internal
volumes:
- ./postgres:/var/lib/postgresql/data
```
@@ -122,33 +122,33 @@ When you finish initial setup, we can add Gitea to our stack. Start by editing G
There you should remove line with ports and port definition under Gitea service and add proxy network under networks. Changed part of the file should look like this:
```yaml
jirkabuilds_gitea:
gitea:
image: docker.gitea.com/gitea:latest
container_name: jirkabuilds_gitea
container_name: gitea
environment:
- USER_UID=${APP_UID}
- USER_GID=${APP_GID}
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=jirkabuilds_gitea_db:5432
- GITEA__database__HOST=gitea_db:5432
- GITEA__database__NAME=${DB_NAME}
- GITEA__database__USER=${DB_USER}
- GITEA__database__PASSWD=${DB_PASSWORD}
restart: always
networks:
- gitea-internal
- jirkabuilds_proxy_network
- gitea_internal
- proxy_network
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
depends_on:
- jirkabuilds_gitea_db
- gitea_db
```
Last step is to change `Caddyfile` in `web` folder. All you need to do is add following lines:
```
git.jirkabuilds.dev {
reverse_proxy jirkabuilds_gitea:3000
reverse_proxy gitea:3000
}
```
If you have set up DNS correctly, after shutting the stack down and up the Gitea should be online.

View File

@@ -27,37 +27,37 @@ I will store this token into `.env` file inside my `gitea` directory created in
Next we modify Gitea `docker-compose.yml` file to look as follows:
```yml
networks:
jirka_builds_gitea_internal:
jirkabuilds_proxy_network:
jirkabuilds_gitea_runner_net: # For runner dind comunication
jirkabuilds_gitea_net: # For runner gitea comunication, isolated from db
gitea_internal:
proxy_network:
gitea_runner_net: # For runner dind comunication
gitea_net: # For runner gitea comunication, isolated from db
services:
jirkabuilds_gitea:
gitea:
image: docker.gitea.com/gitea:latest
container_name: jirkabuilds_gitea
container_name: gitea
environment:
- USER_UID=${APP_UID}
- USER_GID=${APP_GID}
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=jirkabuilds_gitea_db:5432
- GITEA__database__HOST=gitea_db:5432
- GITEA__database__NAME=${DB_NAME}
- GITEA__database__USER=${DB_USER}
- GITEA__database__PASSWD=${DB_PASSWORD}
restart: always
networks:
- jirka_builds_gitea_internal
- jirkabuilds_proxy_network
- jirkabuilds_gitea_net
- gitea_internal
- proxy_network
- gitea_net
volumes:
- ./gitea:/data
- /etc/timezone:/etc/timezone:ro
- /etc/localtime:/etc/localtime:ro
depends_on:
- jirkabuilds_gitea_db
- gitea_db
jirkabuilds_gitea_db:
gitea_db:
image: docker.io/library/postgres:14
restart: always
environment:
@@ -65,33 +65,33 @@ services:
- POSTGRES_PASSWORD=${DB_PASSWORD}
- POSTGRES_DB=${DB_NAME}
networks:
- jirka_builds_gitea_internal
- gitea_internal
volumes:
- ./postgres:/var/lib/postgresql/data
# New
dind:
image: docker:dind
container_name: jirkabuilds-gitea-dind
container_name: gitea-dind
restart: always
privileged: true
environment:
- DOCKER_TLS_CERTDIR=/certs
volumes:
- jirkabuilds_dind_certs:/certs
- jirkabuilds_dind_data:/var/lib/docker
- dind_certs:/certs
- dind_data:/var/lib/docker
networks:
jirkabuilds_gitea_runner_net:
gitea_runner_net:
aliases:
- docker
runner:
image: gitea/act_runner:latest
container_name: jirkabuilds-gitea-runner
container_name: gitea-runner
restart: always
depends_on:
- dind
- jirkabuilds_gitea
- gitea
environment:
- GITEA_INSTANCE_URL=https://git.jirkabuilds.dev
- GITEA_RUNNER_REGISTRATION_TOKEN=${RUNNER_TOKEN}
@@ -100,16 +100,16 @@ services:
- DOCKER_CERT_PATH=/certs/client
- DOCKER_TLS_VERIFY=1
volumes:
- jirkabuilds_runner_data:/data
- jirkabuilds_dind_certs:/certs:ro
- runner_data:/data
- dind_certs:/certs:ro
networks:
- jirkabuilds_gitea_net
- jirkabuilds_gitea_runner_net
- gitea_net
- gitea_runner_net
volumes:
jirkabuilds_dind_certs:
jirkabuilds_dind_data:
jirkabuilds_runner_data:
dind_certs:
dind_data:
runner_data:
```
And that is all, after `docker compose up -d`, runner should show up in the registry.
@@ -235,7 +235,7 @@ And last step is to create `docker-compose.yml`:
services:
webhook:
build: .
container_name: jirkabuilds_release_web_webhook
container_name: release_web_webhook
volumes:
- ./hooks.json:/etc/webhook/hooks.json:ro
- ./deploy.sh:/app/deploy.sh:ro
@@ -243,16 +243,16 @@ services:
command: ["-verbose", "-hooks=/etc/webhook/hooks.json", "-hotreload"]
restart: unless-stopped
networks:
- jirkabuilds_proxy_network
- proxy_network
networks:
jirkabuilds_proxy_network:
proxy_network:
```
You can see, we are using the same proxy network as for everything. Next step is to add following block to `Caddyfile`:
```
hooks.jirkabuilds.dev {
reverse_proxy jirkabuilds_release_web_webhook:9000
reverse_proxy release_web_webhook:9000
}
```