Merge pull request #1385 from theh2so4/next

[+] Templates: NextCloud and Gitea
This commit is contained in:
Andras Bacsai 2023-11-06 19:13:51 +01:00 committed by GitHub
commit 68b1b9774d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 176 additions and 0 deletions

View File

@ -0,0 +1,45 @@
# documentation: https://docs.gitea.com
# slogan: Gitea (with MariaDB) is a self-hosted, lightweight Git service, offering version control, collaboration, and code hosting.
# tags: version control, collaboration, code, hosting, lightweight, mariadb
services:
gitea:
image: gitea/gitea:latest
environment:
- SERVICE_FQDN_GITEA
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=mariadb
- GITEA__database__NAME=${MYSQL_DATABASE-gitea}
- GITEA__database__USER=$SERVICE_USER_MYSQL
- GITEA__database__PASSWD=$SERVICE_PASSWORD_MYSQL
volumes:
- gitea-data:/var/lib/gitea
- gitea-timezone:/etc/timezone:ro
- gitea-localtime:/etc/localtime:ro
labels:
- "traefik.http.services.gitea-websecure.loadbalancer.server.port=3000"
depends_on:
mariadb:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
interval: 2s
timeout: 10s
retries: 15
mariadb:
image: mariadb:11
volumes:
- gitea-mariadb-data:/var/lib/mysql
environment:
- MYSQL_USER=${SERVICE_USER_MYSQL}
- MYSQL_PASSWORD=${SERVICE_PASSWORD_MYSQL}
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_MYSQLROOT}
healthcheck:
test: ["CMD", "healthcheck.sh", "--connect", "--innodb_initialized"]
interval: 5s
timeout: 20s
retries: 10

View File

@ -0,0 +1,45 @@
# documentation: https://docs.gitea.com
# slogan: Gitea (with MySQL) is a self-hosted, lightweight Git service, offering version control, collaboration, and code hosting.
# tags: version control, collaboration, code, hosting, lightweight, mysql
services:
gitea:
image: gitea/gitea:latest
environment:
- SERVICE_FQDN_GITEA
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=mysql
- GITEA__database__HOST=mysql
- GITEA__database__NAME=${MYSQL_DATABASE-gitea}
- GITEA__database__USER=$SERVICE_USER_MYSQL
- GITEA__database__PASSWD=$SERVICE_PASSWORD_MYSQL
volumes:
- gitea-data:/var/lib/gitea
- gitea-timezone:/etc/timezone:ro
- gitea-localtime:/etc/localtime:ro
labels:
- "traefik.http.services.gitea-websecure.loadbalancer.server.port=3000"
depends_on:
mysql:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
interval: 2s
timeout: 10s
retries: 15
mysql:
image: mysql:8.0
volumes:
- gitea-mysql-data:/var/lib/mysql
environment:
- MYSQL_USER=${SERVICE_USER_MYSQL}
- MYSQL_PASSWORD=${SERVICE_PASSWORD_MYSQL}
- MYSQL_DATABASE=${MYSQL_DATABASE}
- MYSQL_ROOT_PASSWORD=${SERVICE_PASSWORD_MYSQLROOT}
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-h", "localhost"]
interval: 5s
timeout: 20s
retries: 10

View File

@ -0,0 +1,44 @@
# documentation: https://docs.gitea.com
# slogan: Gitea (with PostgreSQL)vis a self-hosted, lightweight Git service, offering version control, collaboration, and code hosting.
# tags: version control, collaboration, code, hosting, lightweight, postgresql
services:
gitea:
image: gitea/gitea:latest
environment:
- SERVICE_FQDN_GITEA
- USER_UID=1000
- USER_GID=1000
- GITEA__database__DB_TYPE=postgres
- GITEA__database__HOST=postgresql
- GITEA__database__NAME=${POSTGRESQL_DATABASE-gitea}
- GITEA__database__USER=$SERVICE_USER_POSTGRESQL
- GITEA__database__PASSWD=$SERVICE_PASSWORD_POSTGRESQL
volumes:
- gitea-data:/var/lib/gitea
- gitea-timezone:/etc/timezone:ro
- gitea-localtime:/etc/localtime:ro
labels:
- "traefik.http.services.gitea-websecure.loadbalancer.server.port=3000"
depends_on:
postgresql:
condition: service_healthy
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
interval: 2s
timeout: 10s
retries: 15
postgresql:
image: postgres:15-alpine
volumes:
- gitea-postgresql-data:/var/lib/postgresql/data
environment:
- POSTGRES_USER=${SERVICE_USER_POSTGRESQL}
- POSTGRES_PASSWORD=${SERVICE_PASSWORD_POSTGRESQL}
- POSTGRES_DB=${POSTGRESQL_DATABASE}
healthcheck:
test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
interval: 5s
timeout: 20s
retries: 10

View File

@ -0,0 +1,22 @@
# documentation: https://docs.gitea.com
# slogan: Gitea is a self-hosted, lightweight Git service, offering version control, collaboration, and code hosting.
# tags: version control, collaboration, code, hosting, lightweight
services:
gitea:
image: gitea/gitea:latest
environment:
- SERVICE_FQDN_GITEA
- USER_UID=1000
- USER_GID=1000
volumes:
- gitea-data:/var/lib/gitea
- gitea-timezone:/etc/timezone:ro
- gitea-localtime:/etc/localtime:ro
labels:
- "traefik.http.services.gitea-websecure.loadbalancer.server.port=3000"
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:3000"]
interval: 2s
timeout: 10s
retries: 15

View File

@ -0,0 +1,20 @@
# documentation: https://docs.nextcloud.com
# slogan: NextCloud is a self-hosted, open-source platform that provides file storage, collaboration, and communication tools for seamless data management.
# tags: cloud, collaboration, communication, filestorage, data
services:
nextcloud:
image: lscr.io/linuxserver/nextcloud:latest
environment:
- SERVICE_FQDN_NEXTCLOUD
- PUID=1000
- PGID=1000
- TZ=Europe/Madrid
volumes:
- nextcloud-config:/config
- nextcloud-data:/data
healthcheck:
test: ["CMD", "curl", "-f", "http://localhost:80"]
interval: 2s
timeout: 10s
retries: 15