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 "ERROR: $@" ; exit 1 ; }
|
|
|
|
info() { echo >&2 "$@" ; }
|
|
|
|
|
|
|
|
DIRNAME="$(dirname $0)"
|
|
|
|
cd "$DIRNAME"
|
|
|
|
source ../env.production
|
|
|
|
source ./env.production
|
|
|
|
|
|
|
|
info "configuring mastodon"
|
|
|
|
sudo docker-compose run web \
|
|
|
|
rails db:setup \
|
|
|
|
|| die "unable to login"
|
|
|
|
|
|
|
|
|
|
|
|
# create the keycloak side of the secret
|
|
|
|
cd ../keycloak
|
|
|
|
source env.production
|
|
|
|
|
|
|
|
sudo docker-compose exec -T keycloak \
|
|
|
|
/opt/keycloak/bin/kcadm.sh \
|
|
|
|
create clients \
|
|
|
|
--server http://localhost:8080/ \
|
|
|
|
--user admin \
|
|
|
|
--password "$KEYCLOAK_ADMIN_PASSWORD" \
|
|
|
|
--realm master \
|
|
|
|
-r "$REALM" \
|
|
|
|
-f - <<EOF || die "unable to create client id"
|
|
|
|
{
|
|
|
|
"clientId": "mastodon",
|
|
|
|
"rootUrl": "https://$MASTODON_HOSTNAME/",
|
|
|
|
"adminUrl": "https://$MASTODON_HOSTNAME/",
|
|
|
|
"redirectUris": [ "https://$MASTODON_HOSTNAME/*" ],
|
|
|
|
"webOrigins": [ "https://$MASTODON_HOSTNAME" ],
|
|
|
|
"clientAuthenticatorType": "client-secret",
|
|
|
|
"secret": "$OIDC_CLIENT_SECRET"
|
|
|
|
}
|
|
|
|
EOF
|