Self-hosting services for funsies
services | ||
.gitignore | ||
apt.txt | ||
bootstrap.sh | ||
pod.sh | ||
provision.sh | ||
README.md | ||
Taskfile.internal.yml | ||
Taskfile.yml |
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 . bootstrap.sh
to set up Task.
Once this is done, task -l
will outline all available commands.
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.
Image versions
When building and starting images, images are tagged with either the release version (if on a commit that's tagged with
a release) or a dev tag that includes the hash (i.e. dev-<commit-hash>
).