Skip to content

sporeproject/spore-ipfs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

10 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Spore IPFS Node

This repository contains the container definition for the Spore IPFS node, running Kubo on ipfs.sporeproject.com.

πŸš€ Features

  • Based on ipfs/kubo v0.26.0
  • Data persisted in /data/ipfs, surviving container restarts and rebuilds
  • Storage quota configured at 10GB (adjustable via environment variable IPFS_STORAGE_MAX)
  • Exposes:
    • IPFS Gateway: https://ipfs.sporeproject.com (HTTP on port 8080)
    • HTTP API: http://<host>:5001 (for local access)
    • Swarm p2p port: 4001 (for peer-to-peer connections)

πŸ“¦ Deployment

This node runs in a Docker container orchestrated by Dokku, with:

  • a persistent volume mounted at /data/ipfs
  • ports exposed for the gateway (8080) and HTTP API (5001)
  • automatic TLS termination for the gateway via Let’s Encrypt

The container automatically: βœ… Initializes the IPFS repository if needed
βœ… Ensures proper API and Gateway bind addresses (0.0.0.0)
βœ… Removes stale lock files left by previous containers
βœ… Enforces the configured storage maximum

πŸ”„ Lifecycle

To rebuild or restart the node:

  • Stop the container first
  • Rebuild the image and restart it
  • The /data/ipfs volume ensures that content and configuration are retained

ℹ️ Notes

  • Storage quota is currently set to 10GB; you can change IPFS_STORAGE_MAX and rebuild.
  • The WebUI (on port 5001) may not list all pinned content; use the HTTP API to query pins or fetch content.
  • The node removes stale repo.lock files on startup to avoid rebuild failures.

πŸ”— API Examples

Add a file:

curl -F file=@hello.txt http://127.0.0.1:5001/api/v0/add

Check if pinned:

curl -X POST "http://127.0.0.1:5001/api/v0/pin/ls?arg=<CID>"

Retrieve stats:

curl -X POST "http://127.0.0.1:5001/api/v0/object/stat?arg=<CID>"

Gateway:

https://ipfs.sporeproject.com/ipfs/<CID>

For more details on Kubo and the IPFS HTTP API, see:
πŸ“– https://docs.ipfs.tech/reference/kubo/rpc/

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published