close
Skip to content

ipfs/someguy

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

117 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🤷 Someguy

Official Part of IPFS Project Discourse Forum Matrix CI Code Coverage GitHub Release Go Reference

Someguy is an HTTP Delegated Routing V1 server that proxies requests to the Amino DHT and other Delegated Routing servers such as the Network Indexer.

Shipyard also runs a public Someguy instance at https://delegated-ipfs.dev/routing/v1.

Build

go build -o someguy

Install

go install github.com/ipfs/someguy@latest

Docker

Automated Docker container releases are available from the Github container registry:

  • 🟢 Releases
    • latest always points at the latest stable release
    • vN.N.N point at a specific release tag
  • 🟠 Unreleased developer builds
    • main-latest always points at the HEAD of the main branch
    • main-YYYY-DD-MM-GITSHA points at a specific commit from the main branch
  • ⚠️ Experimental, unstable builds
    • staging-latest always points at the HEAD of the staging branch
    • staging-YYYY-DD-MM-GITSHA points at a specific commit from the staging branch
    • This tag is used by developers for internal testing, not intended for end users

When using Docker, pass configuration via -e:

$ docker pull ghcr.io/ipfs/someguy:main-latest
$ docker run --rm -it --net=host ghcr.io/ipfs/someguy:main-latest

See /docs/environment-variables.md.

Usage

Run someguy as a client or as a server.

Server

Start the server with someguy start. By default it proxies requests to the IPFS Amino DHT and the cid.contact indexer (IPNI) node.

For more details, run someguy start --help.

Client

To query an existing server without running one yourself, use someguy ask <subcommand> to look up a provider, peer, or IPNS record.

For more details, run someguy ask --help.

AutoConf

Automatic configuration of bootstrap peers and delegated routing endpoints. When enabled (default), Someguy replaces the auto placeholder with network-recommended values fetched from a remote URL.

Configuration:

Endpoint flags (default to auto):

To use custom endpoints instead of auto:

someguy start --ipns-endpoints https://example.com

See environment-variables.md for URL formats and configuration details.

Deployment

For self-hosting, run the prebuilt Docker image.

Release

  1. Create a PR from branch release-vX.Y.Z against main that:
    1. Updates CHANGELOG.md with entries for the current release
    2. Updates the version.json file
  2. Once the release checker creates a draft release, copy-paste the changelog into the draft
  3. Merge the PR; the release workflow tags and publishes automatically

License

Dual-licensed under MIT + Apache 2.0

About

A Delegated Routing V1 server and client for all your HTTP/IPFS routing needs.

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors