Skip to content

Configure IPFS node #9

@olizilla

Description

@olizilla

For this we will need to provide ipfs as a custom dockerfile, same as we do for the pickup worker image here https://github.com/olizilla/pickup/blob/65a1d9b1b20201119f80a9fe659455b394091e7a/stacks/PickupStack.ts#L14

An example of setting up your ipfs node from a container init script is here
https://github.com/ipfs-shipyard/go-ipfs-docker-examples/blob/main/gateway/Dockerfile

Some config changes to make

# dont add provider records to the dht
ipfs config --json Experimental.StrategicProviding true

# maybe have go faster dht... but makes it unusable for the first 5 mins!! https://github.com/ipfs/kubo/blob/master/docs/experimental-features.md#accelerated-dht-client
ipfs config --json Experimental.AcceleratedDHTClient true

# as per gateways
ipfs config --json Swarm.DisableBandwidthMetrics true

# no MDNS plz
ipfs config --json Discovery.MDNS.Enabled false

# plz fail early if bits get flipped in blockstore
ipfs config --json Datastore.HashOnRead true

if we want auto GC-ing then... but might be better to just do it manually.

# Gotta GC, set with reference to the ephemeral storage available
ipfs config --json Datastore.StorageMax "200GB"
ipfs config --json Datastore.StorageGCWatermark "50"
ipfs config --json Datastore."GCPeriod" "10m"
# Maybe manually GC after each upload as well.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions