No description
- Shell 100%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
| .gitignore | ||
| backup.sh | ||
| compose.yml | ||
| README.md | ||
Infra
This repos contains the blueprint for my personal infrastructure.
List of services:
- paperless-ngx
- nextcloud
- forgejo
Useful commands
# remove all containers
docker rm -f $(docker ps -aq)
# remove all volumes
docker volume rm $(docker volume ls -q)
Setup instructions
The whle infra can be run with a single command but it needs two files: .dev and init.sql
# .env
VOLUMES_DIR=
POSTGRES_USER=
POSTGRES_PASSWORD=
POSTGRES_DB=
NEXTCLOUD_DB=
NEXTCLOUD_USER=
NEXTCLOUD_PASSWORD=
PAPERLESS_SECRET_KEY=
PAPERLESS_DB=
PAPERLESS_USER=
PAPERLESS_PASSWORD=
FORGEJO_DB=
FORGEJO_USER=
FORGEJO_PASSWORD=
-- init.db
-- repeat for all services with same values of .env file
CREATE USER <> WITH PASSWORD '<>';
CREATE DATABASE <> OWNER <>;
GRANT ALL PRIVILEGES ON DATABASE <> TO <>;
Backups
All the data is saves at /infra_data and all that is needed is to run tar -xzvf backup-(date).tar.gz on the backup and put the content in the folder.
There might be a problem with nextcloud permissions when mounting a backup, to fix this just run sudo chown -R 33:33 /infra_data/nextcloud/.
Todos
- self host postgres instance with adminer
- move paperless storage from sqlite over postgres
- make init script for postgres
- self host nextcloud
- self host forgejo
- use variables
- put it all together through proper nomenclature
- organize all the volumes and make backups
- self host immich and connect it to nextcloud
- self host eurooffice and connect it to nextcloud
- make a
restore.shfile - deploy it on hertzner