Sign inSign up

parallaxprotocol/parallax

By parallaxprotocol

•Updated about 12 hours ago

Parallax full-node client (parallaxd, parallax-cli, parallax-wallet)

Image
0

1.2K

parallaxprotocol/parallax repository overview

⁠Parallax

Official Docker images for Parallax⁠, a peer-to-peer electronic cash system with 10-minute proof-of-work blocks and smart contract support. Each image bundles the full client suite: parallaxd (the node daemon), parallax-cli (the JSON-RPC client), parallax-wallet (the offline wallet tool) and the parallax multi-call wrapper, which is the image entrypoint.

Images are published for linux/amd64 and linux/arm64 with SBOM and provenance attestations.

⁠Tags

  • latest - most recent stable release
  • 2.0, 2.0.0 - specific release lines
  • Prerelease tags (e.g. 2.0.0-rc3) are published but never move latest

⁠Quick start

Run a full node with persistent chain data:

docker run -d --name parallax \
  -v parallax-data:/home/parallax/.parallax \
  -p 32110:32110 -p 32110:32110/udp \
  parallaxprotocol/parallax node

Follow the logs:

docker logs -f parallax

Query the running node through the bundled RPC client (uses the IPC socket inside the container, no HTTP setup needed):

docker exec parallax parallax rpc info
docker exec parallax parallax rpc blockcount

Stop gracefully. Give the database time to close cleanly rather than accepting Docker's 10-second default kill:

docker stop -t 60 parallax

⁠Ports

PortProtocolPurpose
32110TCP + UDPP2P networking and node discovery
8545TCPJSON-RPC over HTTP (opt-in, off by default)
8546TCPJSON-RPC over WebSocket (opt-in, off by default)

⁠Enabling HTTP RPC

The HTTP server binds to localhost inside the container by default, so a published port stays unreachable until you bind it to the container's external interface:

docker run -d --name parallax \
  -v parallax-data:/home/parallax/.parallax \
  -p 32110:32110 -p 32110:32110/udp \
  -p 127.0.0.1:8545:8545 \
  parallaxprotocol/parallax node --http --http.addr 0.0.0.0

Warning: --http.addr 0.0.0.0 trusts Docker's network boundary to do the filtering. Publish the port bound to 127.0.0.1 (as above) or keep it inside a private Docker network; never expose an unauthenticated RPC port to the public internet.

⁠Volumes

  • /home/parallax/.parallax - chain data, keystore, IPC socket, logs. Declared as a volume; mount a named volume or host path here.
  • /home/parallax/.xhash - XHash mining DAGs. Only worth mounting when mining; DAGs are regenerated if absent.

The container runs as the unprivileged user parallax (uid/gid 1000). When bind-mounting a host directory, make sure uid 1000 can write to it.

⁠Wrapper subcommands

The entrypoint is the parallax multi-call wrapper:

docker run --rm parallaxprotocol/parallax version        # print version info
docker run --rm parallaxprotocol/parallax node --help    # parallaxd flags
docker run --rm parallaxprotocol/parallax rpc --help     # parallax-cli commands
docker run --rm parallaxprotocol/parallax wallet --help  # offline wallet tool

⁠Resources

⁠License

LGPL-3.0 (library) / GPL-3.0 (executables).

Tag summary

Content type

Image

Digest

sha256:572419359…

Size

45.5 MB

Last updated

about 12 hours ago

docker pull parallaxprotocol/parallax