mirror of
https://github.com/bensuperpc/infrastructure.git
synced 2024-11-09 19:57:26 +01:00
Compare commits
3 Commits
eab7e99486
...
51a014e14c
Author | SHA1 | Date | |
---|---|---|---|
51a014e14c | |||
edc107feaf | |||
68b917a720 |
4
.github/workflows/main.yml
vendored
4
.github/workflows/main.yml
vendored
@ -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"
|
||||
|
2
Makefile
2
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 privatebin linkstack watchtower
|
||||
PROFILE_CMD := $(addprefix --profile ,$(PROFILES))
|
||||
|
||||
# gitea-runner transmission
|
||||
|
22
README.md
22
README.md
@ -20,6 +20,10 @@ 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)
|
||||
- [x] Privatebin (Pastebin)
|
||||
|
||||
## Screenshots
|
||||
|
||||
@ -73,6 +77,8 @@ 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 |
|
||||
| [privatebin.bensuperpc.org](https://privatebin.bensuperpc.org) | Sub | Pastebin |
|
||||
| bensuperpc.com | Main | Redirect to bensuperpc.org |
|
||||
| bensuperpc.fr | Main | Redirect to bensuperpc.org |
|
||||
| bensuperpc.net | Main | Redirect to bensuperpc.org |
|
||||
@ -176,12 +182,14 @@ 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) |
|
||||
| Privatebin | Pastebin | [privatebin.bensuperpc.org](https://privatebin.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 +202,18 @@ 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)
|
||||
- [Privatebin](https://github.com/PrivateBin/PrivateBin)
|
||||
- [Linkstack](https://linkstack.org)
|
||||
- [Imagisphe](https://imagisphe.re/)
|
||||
|
||||
## License
|
||||
|
||||
|
@ -85,6 +85,30 @@ syncthing.bensuperpc.org {
|
||||
}
|
||||
}
|
||||
|
||||
it-tools.bensuperpc.org {
|
||||
reverse_proxy it-tools:80
|
||||
}
|
||||
|
||||
tools.bensuperpc.org {
|
||||
redir https://it-tools.bensuperpc.org permanent
|
||||
}
|
||||
|
||||
privatebin.bensuperpc.org {
|
||||
reverse_proxy privatebin:8080
|
||||
}
|
||||
|
||||
pastebin.bensuperpc.org {
|
||||
redir https://privatebin.bensuperpc.org permanent
|
||||
}
|
||||
|
||||
linkstack.bensuperpc.org {
|
||||
reverse_proxy linkstack:443 {
|
||||
transport http {
|
||||
tls_insecure_skip_verify
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
link.bensuperpc.org {
|
||||
# TODO: Use service with database
|
||||
# Friendly links
|
||||
@ -111,4 +135,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
|
||||
}
|
||||
|
23
infrastructure/it-tools/docker-compose.it-tools.yml
Normal file
23
infrastructure/it-tools/docker-compose.it-tools.yml
Normal file
@ -0,0 +1,23 @@
|
||||
services:
|
||||
# it-tools
|
||||
it-tools:
|
||||
image: corentinth/it-tools:latest
|
||||
container_name: it-tools
|
||||
profiles:
|
||||
- it-tools
|
||||
restart: on-failure:5
|
||||
depends_on:
|
||||
- caddy
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
read_only: true
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '0.5'
|
||||
memory: 512M
|
||||
reservations:
|
||||
cpus: '0.001'
|
||||
memory: 20M
|
30
infrastructure/linkstack/docker-compose.linkstack.yml
Normal file
30
infrastructure/linkstack/docker-compose.linkstack.yml
Normal file
@ -0,0 +1,30 @@
|
||||
services:
|
||||
# linkstack
|
||||
linkstack:
|
||||
image: linkstackorg/linkstack:latest
|
||||
container_name: linkstack
|
||||
profiles:
|
||||
- linkstack
|
||||
restart: on-failure:5
|
||||
depends_on:
|
||||
- caddy
|
||||
env_file:
|
||||
- ./linkstack/env/linkstack.env
|
||||
volumes:
|
||||
- linkstack_data:/htdocs
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '0.5'
|
||||
memory: 512M
|
||||
reservations:
|
||||
cpus: '0.001'
|
||||
memory: 20M
|
||||
|
||||
volumes:
|
||||
linkstack_data:
|
||||
name: linkstack_data
|
7
infrastructure/linkstack/env/linkstack.env
vendored
Normal file
7
infrastructure/linkstack/env/linkstack.env
vendored
Normal file
@ -0,0 +1,7 @@
|
||||
HTTP_SERVER_NAME="linkstack.bensuperpc.org"
|
||||
HTTPS_SERVER_NAME="linkstack.bensuperpc.org"
|
||||
TZ="Europe/Paris"
|
||||
PHP_MEMORY_LIMIT="512M"
|
||||
UPLOAD_MAX_FILESIZE="8M"
|
||||
LOG_LEVEL="info"
|
||||
SERVER_ADMIN="bensuperpc@gmail.com"
|
29
infrastructure/privatebin/docker-compose.privatebin.yml
Normal file
29
infrastructure/privatebin/docker-compose.privatebin.yml
Normal file
@ -0,0 +1,29 @@
|
||||
services:
|
||||
# privatebin
|
||||
privatebin:
|
||||
image: privatebin/nginx-fpm-alpine:latest
|
||||
container_name: privatebin
|
||||
profiles:
|
||||
- privatebin
|
||||
restart: on-failure:5
|
||||
depends_on:
|
||||
- caddy
|
||||
volumes:
|
||||
- privatebin_data:/srv/data
|
||||
networks:
|
||||
- infra-network
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
read_only: true
|
||||
deploy:
|
||||
resources:
|
||||
limits:
|
||||
cpus: '0.5'
|
||||
memory: 512M
|
||||
reservations:
|
||||
cpus: '0.001'
|
||||
memory: 20M
|
||||
|
||||
volumes:
|
||||
privatebin_data:
|
||||
name: privatebin_data
|
Loading…
Reference in New Issue
Block a user