3.5 KiB
Infrastructure
My personal infrastructure for my servers and services.
**I moved to caddy inetead of nginx, you can find the old version before this commit:b98fca7af8
About
This is my infrastructure. It's a collection of scripts and configuration files that I use to manage my servers and services. It uses ~~Nginx ~~ caddy and docker-compose to run my services (And many other things). It's a work in progress, and I'm still learning a lot about it. If you have any questions or suggestions, feel free to open an issue or a pull request.
Features
- caddy 2 reverse proxy
- Docker / docker-compose
Letsencrypt / Certbot(Caddy)- Wordpress (Via FASTCGI/caddy)
- PHPMyAdmin (MariaDB)
- Qbittorrent
- Jellyfin
- Gitea
- Mastodon
- Minecraft server (Hyperworld v2)
- SSL for all subdomains / Services (Not just the main domain)
Screenshots
Installation and configuration
Requirements
- Docker
- Docker Compose
- Git
- Web domain (I use OVH)
- Open port 80 and 443 on your router (I use a Orange box with default IP)
Clone
Clone this repository to your local machine using:
git clone --recurse-submodules --remote-submodules https://github.com/bensuperpc/infrastructure.git
Go to the folder
cd infrastructure
Get the SSL certificate
For all bensuperpc.org, you need to replace it with your domain, example: bensuperpc.com
find . \( -type d -name .git -prune \) -o -type f -print0 | xargs -0 sed -i 's/bensuperpc.org/bensuperpc.com/g'
And then, caddy will generate the certificate for you and renew it automatically :D (It's easier than certbot and nginx)
Configure the infrastructure
You must create a file named .env
with the following content:
MARIADB_ROOT_PASSWORD=<your_root_password>
MARIADB_USER=<your_user>
MARIADB_PASSWORD=<your_password>
Wordpress website
For the Wordpress website, you can configure in GUI when you go to the website.
Start the infrastructure
Start the website with:
make start-at
Stop the website with (or CTRL+C with the previous command):
make stop
URL
You can access to the website with:
- bensuperpc.org and www.bensuperpc.org (Wordpress for now)
Build with
- Wordpress
- Gnu Make
- Github API
- Github Actions
- Docker
- Docker Compose
- Docker Hub
- How To Start WordPress with Caddy using Docker Compose
- Digital Ocean - How To Install WordPress with Docker Compose (nginx)
- PGAmin
- Qbittorrent
- Jellyfin
- Letsencrypt
- Certbot
- Nginx
- UWSGI