goo/services/forgejo/forgejo.template
2025-03-09 21:43:17 -04:00

89 lines
1.6 KiB
Plaintext

{
"networks": {
"forgejo": {
"external": false
}
},
"services": {
"server": {
"image": "{{.Src}}",
"container_name": "forgejo",
"environment": [
"USER_UID=1000",
"USER_GID=1000",
{{if eq .Config.db "mysql"}}
FORGEJO__database__DB_TYPE=mysql,
FORGEJO__database__HOST=db:3306,
FORGEJO__database__NAME=forgejo,
FORGEJO__database__USER=forgejo,
FORGEJO__database__PASSWD=forgejo,
{{end}}
{{if eq .Config.db "postgres"}}
FORGEJO__database__DB_TYPE=postgres,
FORGEJO__database__HOST=db:5432,
FORGEJO__database__NAME=forgejo,
FORGEJO__database__USER=forgejo,
FORGEJO__database__PASSWD=forgejo,
{{end}}
],
{{with .Config.Restart}}"restart": "{{.}}",{{end}}
"networks": [
"forgejo"
],
"volumes": [
{{range .Volumes}}
"{{.}}",
{{end}}
],
"ports": [
{{range .Ports}}
"{{.}}",
{{end}}
],
{{if .Config.db}}
"depends_on": [
"db"
],
{{end}}
},
{{if eq .Config.db "mysql"}}
"db": {
"image": "mysql:8",
"restart": "always",
"environment": [
"MYSQL_ROOT_PASSWORD=forgejo",
"MYSQL_USER=forgejo",
"MYSQL_PASSWORD=forgejo",
"MYSQL_DATABASE=forgejo"
],
"networks": [
"forgejo"
],
"volumes": [
"{{.Config.db_path}}:/var/lib/mysql"
]
},
{{end}}
{{if eq .Config.db "postgres"}}
"db": {
"image": "postgres:14",
"restart": "always",
"environment": [
"POSTGRES_USER=forgejo",
"POSTGRES_PASSWORD=forgejo",
"POSTGRES_DB=forgejo"
],
"networks": [
"forgejo"
],
"volumes": [
"{{.Config.db_path}}:/var/lib/postgresql/data"
]
},
{{end}}
}
}