Self-hosting services for funsies
This repository has been archived on 2024-07-19. You can view files and clone it, but cannot push or open issues or pull requests.
Find a file
Marc Cataford d84dfe0ec2
feat(plex): move Plex setup to task model
fix: ports published for plex

fix: Dockerfile name
2023-12-15 15:44:47 -05:00
pyinfra fix: non-interactive upgrade (#9) 2022-11-19 11:42:25 -05:00
script feat(services): bookstack (#33) 2023-12-15 12:40:14 -05:00
services feat(plex): move Plex setup to task model 2023-12-15 15:44:47 -05:00
.gitignore feat(services): bookstack (#33) 2023-12-15 12:40:14 -05:00
.python-version chore: general tooling updates (#17) 2023-04-29 11:36:53 -04:00
README.md feat(plex): move Plex setup to task model 2023-12-15 15:44:47 -05:00
requirements.in infra: remove docker compose dependency (#28) 2023-09-04 14:22:53 -04:00
requirements.txt infra: remove docker compose dependency (#28) 2023-09-04 14:22:53 -04:00
services.yml.j2 fix: typo in ports config key, overexposed ports (#31) 2023-09-06 08:18:40 -04:00
Taskfile.internal.yml feat(services): bookstack (#33) 2023-12-15 12:40:14 -05:00
Taskfile.yml feat(services): bookstack (#33) 2023-12-15 12:40:14 -05:00
tasks.py infra: remove docker compose dependency (#28) 2023-09-04 14:22:53 -04:00

spadinaistan

Quoi?

Spadinaistan is my personal cloud, which runs on an old laptop in my office. This code isn't intended to be used by anyone else.

Getting started

Use . script/bootstrap to set up the Python environment needed for the invoke and pyinfra tooling to work.

This expects pyenv to be set up on your system.

Configuration

Environment provided to tasks

The task runner requires a env.yml file to exist at the top level. This should define a few global variables that are specific to the environment:

version: '3'

env:
    # Path to the application data storage root.
    APP_DATA_DIR: ...
    # Prefix to all container names.
    CONTAINER_NAME_PREFIX: ...
    # Path to the app-specific dotenv files.
    ENV_FILE_DIR: ...
    # Name of the network associated with the tunnel exposing services.
    SHARED_NETWORK_NAME: ...
    # Path to the storage root.
    STORAGE_DIR: ...

The env.yml file is ignored by version-control.