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.
woodbine.nyc/start-all

51 lines
1.1 KiB

#!/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+=\ matrix
SERVICES+=\ gitea
SERVICES+=\ bookstack
SERVICES+=\ zulip
#SERVICES+=\ grafana
#SERVICES+=\ mobilizon
#SERVICES+=\ libib
#SERVICES+=\ manyfold
#SERVICES+=\ diun
HOSTS+=\ $KEYCLOAK_HOST
HOSTS+=\ $HEDGEDOC_HOST
HOSTS+=\ $NEXTCLOUD_HOST
HOSTS+=\ $MASTODON_HOST
HOSTS+=\ $MATRIX_HOST
HOSTS+=\ $GITEA_HOST
HOSTS+=\ $BOOKSTACK_HOST
HOSTS+=\ $ZULIP_HOST
#HOSTS+=\ $MANYFOLD_HOST
#HOSTS+=\ $LIBIB_HOST
#HOSTS+=\ $MOBILIZON_HOST
#HOSTS+=\ $GRAFANA_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