From 876e35b736e814c94dc2bbcc1b392f27b624ce7d Mon Sep 17 00:00:00 2001 From: Bensuperpc Date: Mon, 6 Oct 2025 23:26:20 +0200 Subject: [PATCH] Add config files and optimize Makefile Signed-off-by: Bensuperpc --- DockerCompose.mk | 47 ++++++------------- Makefile | 24 ++++------ configs/7dtd.conf | 1 + configs/forgejo.conf | 2 + configs/minecraft.conf | 1 + configs/satisfactory.conf | 1 + configs/tf2.conf | 2 + configs/torrent.conf | 3 ++ .../services/caddy/docker-compose.caddy.yml | 2 +- 9 files changed, 33 insertions(+), 50 deletions(-) create mode 100644 configs/7dtd.conf create mode 100644 configs/forgejo.conf create mode 100644 configs/minecraft.conf create mode 100644 configs/satisfactory.conf create mode 100644 configs/tf2.conf create mode 100644 configs/torrent.conf diff --git a/DockerCompose.mk b/DockerCompose.mk index 04da90a..4f60392 100644 --- a/DockerCompose.mk +++ b/DockerCompose.mk @@ -15,9 +15,14 @@ PROJECT_DIRECTORY ?= infrastructure DOCKER_EXEC ?= docker -DOCKER_PROFILES ?= main_infrastructure +CONFIG_DIRECTORY ?= configs +CONFIG_FILES ?= $(addprefix $(CONFIG_DIRECTORY)/,$(addsuffix .conf,$(CONFIGS))) +include $(CONFIG_FILES) -PROFILE_CMD ?= $(addprefix --profile ,$(DOCKER_PROFILES)) +DOCKER_PROFILES ?= +EXTRA_PROFILES ?= + +PROFILE_CMD ?= $(addprefix --profile ,$(DOCKER_PROFILES) $(EXTRA_PROFILES)) COMPOSE_FILES ?= $(shell find ./$(PROJECT_DIRECTORY) -maxdepth 1 -name 'docker-compose*.yml' -type f | sed -e 's/^/--file /') COMPOSE_DIR ?= --project-directory ./$(PROJECT_DIRECTORY) @@ -32,40 +37,20 @@ DOCKER_COMPOSE_COMMAND ?= $(ENV_ARG_VAR) $(DOCKER_EXEC) compose $(COMPOSE_DIR) $ .PHONY: build all all: start -.PHONY: build -build: - $(DOCKER_COMPOSE_COMMAND) build +GENERIC_TARGETS := build down up run config logs pull images start restart stop -.PHONY: start -start: +.PHONY: $(GENERIC_TARGETS) +$(GENERIC_TARGETS): + $(DOCKER_COMPOSE_COMMAND) $@ + +.PHONY: start-detached +start-detached: $(DOCKER_COMPOSE_COMMAND) up -d -.PHONY: start-at -start-at: - $(DOCKER_COMPOSE_COMMAND) up - .PHONY: no-start no-start: $(DOCKER_COMPOSE_COMMAND) up --no-start -.PHONY: check -check: - $(DOCKER_COMPOSE_COMMAND) config - -.PHONY: stop -stop: down - -.PHONY: down -down: - $(DOCKER_COMPOSE_COMMAND) down - -.PHONY: restart -restart: stop start - -.PHONY: logs -logs: - $(DOCKER_COMPOSE_COMMAND) logs - .PHONY: state state: $(DOCKER_COMPOSE_COMMAND) ps @@ -75,10 +60,6 @@ state: volumes: $(DOCKER_COMPOSE_COMMAND) config --volumes -.PHONY: image-update -image-update: - $(DOCKER_COMPOSE_COMMAND) pull - .PHONY: git-update git-update: # git submodule update --init --recursive --remote diff --git a/Makefile b/Makefile index 2d05ee7..f4f49bb 100644 --- a/Makefile +++ b/Makefile @@ -11,29 +11,21 @@ #// // #////////////////////////////////////////////////////////////// -ADMIN_SERVICES := openssh uptime-kuma +#ADMIN_SERVICES := openssh +# uptime-kuma #BLOG_SERVICES := wordpress -#7DAYS_TO_DIE_SERVICES := 7daystodie_server 7daystodie_backup -#MINECRAFT_SERVICES := minecraft_server minecraft_backup -#SATISFACTORY_SERVICES := satisfactory_server satisfactory_backup -TEAM_FORTRESS_SERVICES := teamfortress2_server -# teamfortress2_backup -# gitea gitea-runner #IA_SERVICES := open-webui -SHARING_SERVICES := privatebin +#SHARING_SERVICES := privatebin # jellyfin # psitransfer picoshare projectsend dufs syncthing -TORRENTS_SERVICES := qbittorrent -# transmission -UTILS_SERVICES := it-tools omni-tools cyberchef +#UTILS_SERVICES := it-tools omni-tools cyberchef +# homepage # stirlingpdf -MAIN_SERVICES := main_infrastructure caddy homepage PROJECT_DIRECTORY := infrastructure +CONFIG_DIRECTORY := configs -DOCKER_PROFILES := $(MAIN_SERVICES) $(ADMIN_SERVICES) $(BLOG_SERVICES) \ - $(7DAYS_TO_DIE_SERVICES) $(MINECRAFT_SERVICES) $(SATISFACTORY_SERVICES) \ - $(GIT_SERVICES) $(IA_SERVICES) $(SHARING_SERVICES) \ - $(TORRENTS_SERVICES) $(UTILS_SERVICES) +CONFIGS := torrent +#DOCKER_PROFILES := include DockerCompose.mk diff --git a/configs/7dtd.conf b/configs/7dtd.conf new file mode 100644 index 0000000..e909393 --- /dev/null +++ b/configs/7dtd.conf @@ -0,0 +1 @@ +DOCKER_PROFILES += 7daystodie_server 7daystodie_backup diff --git a/configs/forgejo.conf b/configs/forgejo.conf new file mode 100644 index 0000000..d556517 --- /dev/null +++ b/configs/forgejo.conf @@ -0,0 +1,2 @@ +DOCKER_PROFILES += forgejo forgejo-runner +# DOCKER_PROFILES += gitea gitea-runner diff --git a/configs/minecraft.conf b/configs/minecraft.conf new file mode 100644 index 0000000..2af8eef --- /dev/null +++ b/configs/minecraft.conf @@ -0,0 +1 @@ +DOCKER_PROFILES += minecraft_server minecraft_backup diff --git a/configs/satisfactory.conf b/configs/satisfactory.conf new file mode 100644 index 0000000..b99f5e4 --- /dev/null +++ b/configs/satisfactory.conf @@ -0,0 +1 @@ +DOCKER_PROFILES += satisfactory_server satisfactory_backup diff --git a/configs/tf2.conf b/configs/tf2.conf new file mode 100644 index 0000000..ecb5295 --- /dev/null +++ b/configs/tf2.conf @@ -0,0 +1,2 @@ +DOCKER_PROFILES += teamfortress2_server +# teamfortress2_backup diff --git a/configs/torrent.conf b/configs/torrent.conf new file mode 100644 index 0000000..bd84b5c --- /dev/null +++ b/configs/torrent.conf @@ -0,0 +1,3 @@ +DOCKER_PROFILES += main_infrastructure caddy +DOCKER_PROFILES += qbittorrent +# transmission diff --git a/infrastructure/services/caddy/docker-compose.caddy.yml b/infrastructure/services/caddy/docker-compose.caddy.yml index 12ed49e..bfbebb7 100644 --- a/infrastructure/services/caddy/docker-compose.caddy.yml +++ b/infrastructure/services/caddy/docker-compose.caddy.yml @@ -1,7 +1,7 @@ services: # Caddy caddy: - image: caddy:latest + image: bensuperpc/caddy-l4:latest container_name: caddy profiles: - caddy