From 68b917a7204e33035f04d21f56161defba0497a4 Mon Sep 17 00:00:00 2001 From: Bensuperpc Date: Fri, 23 Aug 2024 17:19:24 +0200 Subject: [PATCH] Add it-tools Signed-off-by: Bensuperpc --- .github/workflows/main.yml | 4 ++++ Makefile | 2 +- README.md | 17 ++++++++++++- .../caddy/config/bensuperpc.org/Caddyfile | 9 +++++++ .../it-tools/docker-compose.it-tools.yml | 24 +++++++++++++++++++ infrastructure/it-tools/env/it-tools.env | 2 ++ 6 files changed, 56 insertions(+), 2 deletions(-) create mode 100644 infrastructure/it-tools/docker-compose.it-tools.yml create mode 100644 infrastructure/it-tools/env/it-tools.env diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 4974b71..61b6c6f 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -32,6 +32,10 @@ jobs: run: make build # - name: "Start server" # run: make start + - name: "Logs server" + run: make logs + - name: "State server" + run: make state - name: "Stop server" run: make stop - name: "Down server" diff --git a/Makefile b/Makefile index 91dc5af..90c06b5 100644 --- a/Makefile +++ b/Makefile @@ -13,7 +13,7 @@ DOCKER := docker -PROFILES := caddy wordpress adminer syncthing uptime-kuma jellyfin qbittorrent psitransfer gitea watchtower +PROFILES := caddy wordpress adminer syncthing uptime-kuma jellyfin qbittorrent psitransfer gitea it-tools watchtower PROFILE_CMD := $(addprefix --profile ,$(PROFILES)) # gitea-runner transmission diff --git a/README.md b/README.md index c0eca0c..13c8157 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,9 @@ If you have any **questions** or **suggestions**, feel free to open an issue or - [x] Gitea (Git server) - [x] Uptime Kuma (Monitoring) - [x] qbittorrent and transmission (Torrent client/server) +- [x] SyncThing (File synchronization) +- [x] PsiTransfer (File sharing) +- [x] it-tools (Tools for IT) ## Screenshots @@ -73,6 +76,7 @@ And then, caddy will generate the certificate for you and renew it automatically | [jellyfin.bensuperpc.org](https://jellyfin.bensuperpc.org) | Sub | Jellyfin for media server | | [syncthing.bensuperpc.org](https://syncthing.bensuperpc.org) | Sub | SyncThing for file synchronization | | [psitransfer.bensuperpc.org](https://psitransfer.bensuperpc.org) | Sub | PsiTransfer for file sharing | +| [it-tools.bensuperpc.org](https://it-tools.bensuperpc.org) | Sub | Tools for IT | | bensuperpc.com | Main | Redirect to bensuperpc.org | | bensuperpc.fr | Main | Redirect to bensuperpc.org | | bensuperpc.net | Main | Redirect to bensuperpc.org | @@ -176,12 +180,13 @@ You can find all service on this table: | Jellyfin | Jellyfin for media server | [jellyfin.bensuperpc.org](https://jellyfin.bensuperpc.org) | | SyncThing | SyncThing for file synchronization | [syncthing.bensuperpc.org](https://syncthing.bensuperpc.org) | | PsiTransfer | PsiTransfer for file sharing | [psitransfer.bensuperpc.org](https://psitransfer.bensuperpc.org) | +| it-tools | Tools for IT | [it-tools.bensuperpc.org](https://it-tools.bensuperpc.org) | You can disable some services by removing the service name in PROFILES variable in the [Makefile](Makefile) file. To enable the gitea CI: https://medium.com/@lokanx/how-to-build-docker-containers-using-gitea-runners-600729555e07 -## Build with +## Sources - [Wordpress](https://wordpress.org/) - [Gnu Make](https://www.gnu.org/software/make/) @@ -194,6 +199,16 @@ To enable the gitea CI: https://medium.com/@lokanx/how-to-build-docker-container - [Digital Ocean - How To Install WordPress with Docker Compose (nginx)](https://www.digitalocean.com/community/tutorials/how-to-install-wordpress-with-docker-compose) - [Letsencrypt](https://letsencrypt.org/) - [Caddy](https://caddyserver.com/) +- [Adminer](https://www.adminer.org/) +- [Uptime Kuma](https://uptime-kuma.com/) +- [qbittorrent](https://www.qbittorrent.org/) +- [Transmission](https://transmissionbt.com/) +- [Gitea](https://gitea.io/) +- [Jellyfin](https://jellyfin.org/) +- [SyncThing](https://syncthing.net/) +- [PsiTransfer](https://psitransfer.com/) +- [It-tools](https://github.com/CorentinTh/it-tools) +- [Imagisphe](https://imagisphe.re/) ## License diff --git a/infrastructure/caddy/config/bensuperpc.org/Caddyfile b/infrastructure/caddy/config/bensuperpc.org/Caddyfile index b4bdc7f..84ffc46 100644 --- a/infrastructure/caddy/config/bensuperpc.org/Caddyfile +++ b/infrastructure/caddy/config/bensuperpc.org/Caddyfile @@ -85,6 +85,14 @@ syncthing.bensuperpc.org { } } +it-tools.bensuperpc.org { + reverse_proxy it-tools:8080 +} + +tools.bensuperpc.org { + redir https://it-tools.bensuperpc.org permanent +} + link.bensuperpc.org { # TODO: Use service with database # Friendly links @@ -111,4 +119,5 @@ link.bensuperpc.org { redir /patapon https://youtu.be/H6CbNHLHkmk?si=ZvU8SzrOK-oCUXT5 permanent redir /darkwater https://youtu.be/Tr8ZgF4Dc0E?si=CEOmm2J6Jp5rdbbt permanent redir /train https://youtu.be/l8mScKWj3kQ?si=BV07uJ9eP3kzV9Kl permanent + redir /jdg https://www.youtube.com/@joueurdugrenier permanent } diff --git a/infrastructure/it-tools/docker-compose.it-tools.yml b/infrastructure/it-tools/docker-compose.it-tools.yml new file mode 100644 index 0000000..5776805 --- /dev/null +++ b/infrastructure/it-tools/docker-compose.it-tools.yml @@ -0,0 +1,24 @@ +services: + # it-tools + it-tools: + image: corentinth/it-tools:latest + container_name: it-tools + profiles: + - it-tools + restart: on-failure:5 + depends_on: + - caddy + env_file: + - ./it-tools/env/it-tools.env + networks: + - infra-network + security_opt: + - no-new-privileges:true + deploy: + resources: + limits: + cpus: '0.5' + memory: 512M + reservations: + cpus: '0.001' + memory: 20M diff --git a/infrastructure/it-tools/env/it-tools.env b/infrastructure/it-tools/env/it-tools.env new file mode 100644 index 0000000..4032ffe --- /dev/null +++ b/infrastructure/it-tools/env/it-tools.env @@ -0,0 +1,2 @@ +PSITRANSFER_ADMIN_PASS=n9jLVNT9QUotTJTT91JqH4GyBTg9pvEn +#PSITRANSFER_PORT=3000