| Filename | Latest commit message | Latest commit date |
|---|---|---|
| Containers | ||
| serverroot/etc | ||
| .gitignore | ||
| README.md | ||
HOME SERVER
QGS
This is the got repo for the settings of my home server.
The goal is to store every config and install scripts in this repo to reproduce the home server at any time and to maintain it.
Architecture
The architecture is the following :
Home server | +- Caddy | +- Docker | | | +- Nextcloud AIO | | | +- Forgejo
Tools
The installed tools given in the architecture are
Caddy
Powerful and simple solution to have a reverse proxy.
Docker
A containerization tool. Its containers are :
Nextcloud
Personnal cloud for home and family.
The Docker command to run the Nextcloud AIO (All In One) mastercontainer for the first time is :
Forgejo
Self hosted git to easily work on home projects.
Repo structure
sererroot
The serverroot folder represents the root of the server's filesystem. The usual folders such as /etc/ are present. The files contained
are to be placed on their correspoding folders in the server and completed if needed.
Containers
The folder with all the containers. The compose.yaml file is at its root. Every service (i.e. container in the compose)
have their own folder with a specific .yaml file that is included in the compose.yaml and potentially additional documentation
in a README and some files. The Containers folder can be copied anywhere fit on the machine. Once copied, to start the
services, cd in Containers and launch the docker compose docker compose up -d.
Installation
OS
The server usually runs on Debian
ddclient
Once ddclient is installed and its config file from serverroot is placed, complete the login and password fields and verify that
the IP can be updated by running
sudo ddclient -daemon=0 -verbose -debug
And check that a SUCCESS is received.
Docker
Follow the doc of docker. For the containers, read the specific README files for more information. If nothing is stated,
setting up the docker compose for the first time should automatically create all the containers and volumes automatically.
Caddy
Follow the doc of Caddy. Once installed and the config files from serverroot are placed, restart the service
sudo systemctl restart caddy and also make sure that it is enabled.