borgwarehouse/docker-compose.yml
rugk b49bae58b5 Use environmental variables for docker-compose
* You can start it as usual, `.env` file is automatically used.
* IMHO easier and cleaner to configure.
* Also removed the `<host>` as it makes this not-runnable out-of-the-box. I need this for https://github.com/Ravinou/borgwarehouse/pull/69 and this was the initial idea of making this PR.
* The `${:?}` syntax is a bash-like thing to produce a proper error message if the variable is not provided.

I checked the setup should basically start (just got a permission error as the UID/GID is wrong).
2023-11-03 17:23:41 +00:00

31 lines
1.5 KiB
YAML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

version: '3'
services:
borgwarehouse:
container_name: borgwarehouse
# If you want to build the image yourself, uncomment the following lines and comment the image line
#build:
# context: .
# dockerfile: Dockerfile
image: borgwarehouse/borgwarehouse
user: "${UID:?UID variable missing}:${GID:?GID variable missing}"
ports:
- "${WEB_SERVER_PORT:?WEB_SERVER_PORT variable missing}:3000"
- "${SSH_SERVER_PORT:?SSH_SERVER_PORT variable missing}:22"
environment:
- NEXTAUTH_URL=${NEXTAUTH_URL:?NEXTAUTH_URL variable missing}
- NEXTAUTH_SECRET=${NEXTAUTH_SECRET:?NEXTAUTH_SECRET variable missing}
- CRONJOB_KEY=${CRONJOB_KEY:?CRONJOB_KEY variable missing}
- SSH_SERVER_PORT=${SSH_SERVER_PORT:?SSH_SERVER_PORT variable missing}
- FQDN=${FQDN:?FQDN variable missing}
volumes:
- ${CONFIG_PATH:?CONFIG_PATH variable missing}:/home/borgwarehouse/app/config
- ${SSH_PATH:?SSH_PATH variable missing}:/home/borgwarehouse/.ssh
- ${SSH_HOST:?SSH_HOST variable missing}:/etc/ssh
- ${BORG_REPOSITORY_PATH:?BORG_REPOSITORY_PATH variable missing}:/home/borgwarehouse/repos
# Apprise is used to send notifications, it's optional. http://apprise:8000 is the URL to use in BorgWarehouse.
apprise:
container_name: apprise
image: caronc/apprise
user: 'www-data:www-data'