Page MenuHomeSoftware Heritage

No OneTemporary

diff --git a/docker/conf/nginx.conf b/docker/conf/nginx.conf
index 8a57c36..b3bd430 100644
--- a/docker/conf/nginx.conf
+++ b/docker/conf/nginx.conf
@@ -1,145 +1,150 @@
worker_processes 1;
# Show startup logs on stderr; switch to debug to print, well, debug logs when
# running nginx-debug
error_log /dev/stderr info;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
client_max_body_size 100M;
# Built-in Docker resolver. Needed to allow on-demand resolution of proxy
# upstreams.
resolver 127.0.0.11 valid=30s;
+ log_format combined_with_duration '$remote_addr - $remote_user [$time_local] '
+ '"$request" $status $body_bytes_sent '
+ '"$http_referer" "$http_user_agent" $request_time';
+ access_log /dev/stdout combined_with_duration;
+
server {
listen 5080 default_server;
# Add a trailing slash to top level requests (e.g. http://localhost:5080/flower)
rewrite ^/([^/]+)$ /$1/ permanent;
# In this pile of proxies, all upstreams are set using a variable. This
# makes nginx DNS-resolve the name of the upstream when clients request
# them, rather than on start. This avoids an unstarted container preventing
# nginx from starting.
#
# Variables need to be set as early as possible, as they're statements from
# the rewrite module and `rewrite [...] break;` will prevent these
# statements from being executed.
location /flower/ {
set $upstream "http://flower:5555";
rewrite ^/flower/(.*)$ /$1 break;
proxy_pass $upstream;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $http_host;
proxy_redirect off;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location /rabbitmq/ {
set $upstream "http://amqp:15672";
rewrite ^ $request_uri;
rewrite ^/rabbitmq(/.*)$ $1 break;
proxy_pass $upstream$uri;
}
location /scheduler {
set $upstream "http://swh-scheduler:5008";
rewrite ^/scheduler/(.*)$ /$1 break;
proxy_pass $upstream;
}
location /storage {
set $upstream "http://swh-storage:5002";
rewrite ^/storage/(.*)$ /$1 break;
proxy_pass $upstream;
}
location /indexer-storage {
set $upstream "http://swh-idx-storage:5007";
rewrite ^/indexer-storage/(.*)$ /$1 break;
proxy_pass $upstream;
}
location /deposit {
set $upstream "http://swh-deposit:5006";
rewrite ^/deposit/(.*)$ /deposit/$1 break;
proxy_pass $upstream;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Host $host:5080;
proxy_set_header SCRIPT_NAME /deposit;
proxy_redirect off;
}
location /objstorage {
set $upstream "http://swh-objstorage:5003";
rewrite ^/objstorage/(.*)$ /$1 break;
proxy_pass $upstream;
}
location /prometheus {
set $upstream "http://prometheus:9090";
proxy_pass $upstream;
}
location /grafana {
set $upstream "http://grafana:3000";
rewrite ^/grafana/(.*)$ /$1 break;
proxy_pass $upstream;
}
location / {
set $upstream "http://swh-web:5004";
proxy_pass $upstream;
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-Host $http_host;
proxy_redirect off;
}
location /keycloak {
set $upstream "http://keycloak:8080";
proxy_pass $upstream;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Server $host;
proxy_set_header X-Forwarded-Port $server_port;
proxy_set_header X-Forwarded-Proto $scheme;
}
location /cmak {
set $upstream "http://cmak:9000";
proxy_pass $upstream;
proxy_set_header Host $host;
rewrite ^/cmak/(.*)$ /$1 break;
sub_filter "href=\"/" "href=\"/cmak/";
sub_filter "src=\"/" "src=\"/cmak/";
sub_filter "action=\"/" "action=\"/cmak/";
sub_filter_once off;
}
location /mailhog {
set $upstream "http://mailhog:8025";
proxy_pass $upstream;
proxy_set_header Host $host;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
rewrite ^/mailhog/(.*)$ /$1 break;
}
}
}
diff --git a/docker/services/swh-storage/entrypoint.sh b/docker/services/swh-storage/entrypoint.sh
index cd86a78..108ab66 100755
--- a/docker/services/swh-storage/entrypoint.sh
+++ b/docker/services/swh-storage/entrypoint.sh
@@ -1,50 +1,52 @@
#!/bin/bash
set -e
source /srv/softwareheritage/utils/pyutils.sh
setup_pip
if [ "$STORAGE_BACKEND" = "postgresql" ]; then
source /srv/softwareheritage/utils/pgsql.sh
setup_pgsql
elif [ "$STORAGE_BACKEND" = "cassandra" ]; then
echo Waiting for Cassandra to start
wait-for-it ${CASSANDRA_SEED}:9042 -s --timeout=0
echo Creating keyspace
cat << EOF | python3
from swh.storage.cassandra import create_keyspace
create_keyspace(['${CASSANDRA_SEED}'], 'swh')
EOF
fi
case "$1" in
"shell")
exec bash -i
;;
*)
if [ "$STORAGE_BACKEND" = "postgresql" ]; then
wait_pgsql ${POSTGRES_DB}
echo Database setup
echo Creating extensions...
swh db init-admin --db-name ${POSTGRES_DB} storage
echo Initializing the database...
swh db init --db-name ${POSTGRES_DB} storage
fi
echo Starting the swh-storage API server
exec gunicorn --bind 0.0.0.0:5002 \
--reload \
+ --access-logfile /dev/stdout \
+ --access-logformat "%(t)s %(r)s %(s)s %(b)s %(M)s" \
--threads 4 \
--workers 2 \
- --log-level DEBUG \
+ --log-level INFO \
--timeout 3600 \
--config 'python:swh.core.api.gunicorn_config' \
'swh.storage.api.server:make_app_from_configfile()'
;;
esac

File Metadata

Mime Type
text/x-diff
Expires
Sat, Jun 21, 5:35 PM (1 w, 5 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3274546

Event Timeline