diff --git a/.env.example b/.env.example index 9b74d2c14f9fb8a892c0c56d73ffe34d95c133b1..b2f91e96f0ce4588aa9d68673a568d750b88c121 100644 --- a/.env.example +++ b/.env.example @@ -1,5 +1,7 @@ # === IPFS === KUBO_RPC="http://127.0.0.1:5001" +KUBO_GATEWAY_PORT=8080 +KUBO_GATEWAY_DOMAIN="localhost" # === POSTGRES === DB_HOST=localhost diff --git a/Dockerfile.Kubo b/Dockerfile.Kubo index 4cb3d2e0bdbab57e60a4da2b28403961b6111275..91317d7606f14c4f36a2192ea6d80359bbae35b3 100644 --- a/Dockerfile.Kubo +++ b/Dockerfile.Kubo @@ -1,5 +1,5 @@ FROM ipfs/kubo:v0.28.0 -COPY ./scripts/remove-default-bootstrap.sh /container-init.d/001-remove-default-bootstrap.sh +COPY ./scripts/configure.sh /container-init.d/001-configure.sh CMD ["daemon", "--enable-pubsub-experiment"] # docker buildx build -f Dockerfile.Kubo . -t h30x/datapod-kubo # docker image push h30x/datapod-kubo \ No newline at end of file diff --git a/docker-compose.prod.yml b/docker-compose.prod.yml index fd55b8fbd4af1a78cca939784e0b64cd61f8e844..5c82ef292ecc6b5c67b1be587ab7a6f9a060efa5 100644 --- a/docker-compose.prod.yml +++ b/docker-compose.prod.yml @@ -40,14 +40,13 @@ services: - 4001:4001 - 4001:4001/udp # public gateway - - 8080:8080 + - ${KUBO_GATEWAY_PORT:-8080}:8080 # expose RPC locally to allow access with ssh tunnel - 127.0.0.1:5001:5001 volumes: - kubo_data:/data/ipfs - healthcheck: - test: ['CMD', 'ipfs', 'diag', 'cmds'] - interval: 1s + environment: + KUBO_GATEWAY_DOMAIN: "gateway.datapod.coinduf.eu" restart: always # ------ diff --git a/scripts/configure.sh b/scripts/configure.sh new file mode 100644 index 0000000000000000000000000000000000000000..ef590d3ad56a510af9dbb1f868c4492683387f0a --- /dev/null +++ b/scripts/configure.sh @@ -0,0 +1,13 @@ +#!/bin/sh +set -ex +# remove default bootstrap nodes +ipfs bootstrap rm all +# prevent gateway from fetching foreign data +ipfs config Gateway.NoFetch --json true +# only reprovide pinned data +ipfs config Reprovider.Strategy "pinned" +# allow to expose hostname +ipfs config Gateway.PublicGateways --json "{\"$KUBO_GATEWAY_DOMAIN\":{\"UseSubdomains\": true,\"Paths\":[\"/ipfs\"]}}" + + + diff --git a/scripts/remove-default-bootstrap.sh b/scripts/remove-default-bootstrap.sh deleted file mode 100644 index bb0cc116bd65cbb2f4393092716347699b43df51..0000000000000000000000000000000000000000 --- a/scripts/remove-default-bootstrap.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/sh -set -ex -ipfs bootstrap rm all