diff --git a/docker/conf/deposit-keycloak.yml b/docker/conf/deposit-keycloak.yml index 7e69b3d..3c3e686 100644 --- a/docker/conf/deposit-keycloak.yml +++ b/docker/conf/deposit-keycloak.yml @@ -1,33 +1,34 @@ scheduler: cls: remote url: http://swh-scheduler:5008 storage: cls: remote url: http://swh-storage:5002/ storage_metadata: cls: remote url: http://swh-storage:5002/ allowed_hosts: - '*' private: secret_key: prod-in-docker db: host: swh-deposit-db port: 5432 name: swh-deposit user: postgres password: testpassword media_root: /tmp/swh-deposit/uploads extraction_dir: "/tmp/swh-deposit/archive/" authentication_provider: keycloak keycloak: server_url: http://keycloak:8080/keycloak/auth/ realm_name: SoftwareHeritage +cache_uri: 127.0.0.1:11211 swh_authority_url: https://deposit.swh.example/ diff --git a/docker/docker-compose.keycloak.yml b/docker/docker-compose.keycloak.yml index 05b5f95..37f76ce 100644 --- a/docker/docker-compose.keycloak.yml +++ b/docker/docker-compose.keycloak.yml @@ -1,44 +1,45 @@ version: "2.1" services: keycloak-db: image: postgres:11 env_file: - ./env/keycloak-db.env environment: # unset PGHOST as db service crashes otherwise PGHOST: keycloak: build: services/keycloak env_file: - ./env/keycloak.env entrypoint: /entrypoint.sh environment: JAVA_TOOL_OPTIONS: "-Dkeycloak.profile=preview -Dkeycloak.profile.feature.token_exchange=enabled" volumes: - "./services/keycloak/entrypoint.sh:/entrypoint.sh:ro" - "./services/keycloak/keycloak_swh_setup.py:/keycloak_swh_setup.py:ro" expose: - "8080" depends_on: - keycloak-db swh-web: depends_on: - keycloak environment: SWH_CONFIG_FILENAME: /web-keycloak.yml volumes: - "./conf/web-keycloak.yml:/web-keycloak.yml:ro" swh-deposit: depends_on: - keycloak environment: SWH_CONFIG_FILENAME: /deposit-keycloak.yml + MEMCACHED: "yes" volumes: - "./conf/deposit-keycloak.yml:/deposit-keycloak.yml:ro" diff --git a/docker/services/swh-deposit/entrypoint.sh b/docker/services/swh-deposit/entrypoint.sh index e0bff60..5700cd7 100755 --- a/docker/services/swh-deposit/entrypoint.sh +++ b/docker/services/swh-deposit/entrypoint.sh @@ -1,41 +1,46 @@ #!/bin/bash set -ex source /srv/softwareheritage/utils/pyutils.sh setup_pip source /srv/softwareheritage/utils/pgsql.sh setup_pgsql if [ "$1" = 'shell' ] ; then shift if (( $# == 0)); then exec bash -i else "$@" fi else + if [ ! -z "$MEMCACHED" ]; then + echo "Starting memcached" + memcached& + fi + wait_pgsql echo "Migrating db" django-admin migrate --settings=${DJANGO_SETTINGS_MODULE} swh-deposit admin user exists test || \ swh-deposit admin user create \ --username test \ --password test \ --provider-url https://softwareheritage.org \ --domain softwareheritage.org echo "starting swh-deposit server" exec gunicorn --bind 0.0.0.0:5006 \ --reload \ --threads 2 \ --workers 2 \ --log-level DEBUG \ --timeout 3600 \ --config 'python:swh.core.api.gunicorn_config' \ 'django.core.wsgi:get_wsgi_application()' fi