From 1ecc58f1a4262b9f1982ab115c312468e18bbc5d Mon Sep 17 00:00:00 2001 From: Christos Mourtogiannis Date: Thu, 6 Aug 2026 16:41:51 +0300 Subject: [PATCH 1/2] Add `Filestash` object storage service --- storage/filestash/docker-compose.yml | 27 +++++++++++++++++++++++++++ storage/filestash/template.env | 11 +++++++++++ 2 files changed, 38 insertions(+) create mode 100644 storage/filestash/docker-compose.yml create mode 100644 storage/filestash/template.env diff --git a/storage/filestash/docker-compose.yml b/storage/filestash/docker-compose.yml new file mode 100644 index 0000000..07ac347 --- /dev/null +++ b/storage/filestash/docker-compose.yml @@ -0,0 +1,27 @@ +# TODO: Add a Collabora WOPI sidecar for in-browser Office document editing (see upstream's example compose). +networks: + internal: + name: "internal" + # External means the container will be accessible from other containers in the same network. + # If you want to isolate the container create a new network, with different name for each container and without being external. + external: true + +volumes: + filestash: + name: "filestash" + +services: + filestash: + image: "machines/filestash:latest" + container_name: "filestash" + restart: "unless-stopped" + networks: + - "internal" + ports: + - "${FILESTASH_PORT?Variable not set}:8334" + environment: + - "APPLICATION_URL=${FILESTASH_APPLICATION_URL:-}" + volumes: + - "filestash:/app/data/state" + labels: + - "traefik.enable=false" diff --git a/storage/filestash/template.env b/storage/filestash/template.env new file mode 100644 index 0000000..0eb16d9 --- /dev/null +++ b/storage/filestash/template.env @@ -0,0 +1,11 @@ +# For all strings containing special characters, use single quotes. +# In case of older docker compose versions (<3.9), do not use single or double quotes at all. + +# Container's docker environment configuration. +COMPOSE_PROJECT_NAME='lowercase_string_without_special_characters' + +# Filestash's docker environment configuration. +FILESTASH_PORT=1234 +# Leave FILESTASH_APPLICATION_URL empty to auto-detect from the request, or set it to the +# public URL Filestash is served behind (e.g. 'https://files.example.com'). +FILESTASH_APPLICATION_URL='' From 530fa313fd035a7242397177ccebf6f97611cd3f Mon Sep 17 00:00:00 2001 From: Christos Mourtogiannis Date: Thu, 6 Aug 2026 16:42:08 +0300 Subject: [PATCH 2/2] Update `README.md` --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 668c1d6..7629936 100644 --- a/README.md +++ b/README.md @@ -25,6 +25,7 @@ This repository contains Docker Compose setups for a variety of applications, en - Metabase (`databases/manage/metabase`) - **Storage** - MinIO (`storage/minio`) + - Filestash (`storage/filestash`) - **Distribute** - RabbitMQ (`distribute/brokers/rabbitmq`) - RedBeat (`distribute/scheduler/redbeat`)