docker-compose environment for the entire v.st system
https://v.st/
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
#!/bin/bash
|
|
|
|
die() { echo >&2 "$@" ; exit 1 ; }
|
|
|
|
|
|
|
|
which jq > /dev/null || die "jq not installed?"
|
|
|
|
which docker-compose > /dev/null || die "docker-compose not installed?"
|
|
|
|
|
|
|
|
source ./env.production || die "no production env?"
|
|
|
|
|
|
|
|
if [ -z "$DOMAIN_NAME" ]; then
|
|
|
|
die "\$DOMAIN_NAME not set; things will break"
|
|
|
|
fi
|
|
|
|
|
|
|
|
SERVICES=nginx # there is no host
|
|
|
|
SERVICES+=\ keycloak
|
|
|
|
SERVICES+=\ hedgedoc
|
|
|
|
SERVICES+=\ nextcloud
|
|
|
|
SERVICES+=\ mastodon
|
|
|
|
SERVICES+=\ grafana
|
|
|
|
SERVICES+=\ matrix
|
|
|
|
|
|
|
|
HOSTS+=\ $KEYCLOAK_HOST
|
|
|
|
HOSTS+=\ $HEDGEDOC_HOST
|
|
|
|
HOSTS+=\ $NEXTCLOUD_HOST
|
|
|
|
HOSTS+=\ $MASTODON_HOST
|
|
|
|
HOSTS+=\ $GRAFANA_HOST
|
|
|
|
HOSTS+=\ $MATRIX_HOST
|
|
|
|
|
|
|
|
for host in $HOSTS ; do
|
|
|
|
host $host > /dev/null || die "$host: DNS entry not present?"
|
|
|
|
done
|
|
|
|
|
|
|
|
for service in $SERVICES ; do
|
|
|
|
echo "$service: starting"
|
|
|
|
./$service/setup || die "$server: failed to start"
|
|
|
|
done
|