-
Notifications
You must be signed in to change notification settings - Fork 4
Expand file tree
/
Copy pathexample.env
More file actions
114 lines (99 loc) · 5.26 KB
/
example.env
File metadata and controls
114 lines (99 loc) · 5.26 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
# Use `source .env` to load items, likely you actually want
# ```sh
# set -a # Automatically export variables
# source .env
# set +a # Stop auto-exporting
# <run some commands that need these vars>
# ```
#
# DO NOT wrap variables in quotes unless already present (THING=stuff is correct, not THING="stuff")
# Otherwise passing them to docker/podman may fail.
#
# ALL VARIABLES need to be \n terminated, no whitespace trimming happens
#
# ALL PATHS MUST BE ABSOLUTE PATHS, used in scripts from different working directories,
# ALL RELATIVE PATHS MAY FAIL!
#
# Variables set but empty will be set by scripts or must be set by you manually.
#### Cloud Host SSH
# (Optional) Only required for ssh and scp helpers in ./scripts/*
REMOTE_HOST="root@some.instance.cloud"
REMOTE_IDENTITY="/home/you/.ssh/your-ssh-private-key"
# TLS - managed by Let's Encrypt `certbot`
# Registration email required for urgent renewal/security notifications
TLS_EMAIL="you@example.com"
TLS_DOMAIN="your.domain.com"
TLS_CERTS_PATH=
TLS_KEY_PATH=
# ONLY for development, you may use dummy TLS setup from source ./service/static
# TLS_CERTS_PATH=/full/path/to/pbs-proxy/service/static/sample.pem
# TLS_KEY_PATH=/full/path/to/pbs-proxy/service/static/sample.rsa
#### Service Settings
# ONLY for use in development testing OR if running a node on localhost where https isn't required.
# NOTE: data sent to celestia can be http as we have already encrypted it,
# but headers for the JWT to post to celestia are not encrypted without TLS!
# UNSAFE_HTTP_UPSTREAM=true # comment this out or unset to force https
# More info on docker in README.md
# https://github.com/celestiaorg/private-blockspace-proxy
DOCKER_CONTAINER_NAME="ghcr.io/celestiaorg/pbs-proxy"
PBS_DB_PATH=/tmp/db-pbs-service-testing
# 32 byte key used for ChaCha20 encryption
ENCRYPTION_KEY=
# Expects a socket with ip & port specified (not transport)
# NOTE: 0.0.0.0 binding will allow the service to be accessible to inbound
PBS_SOCKET=0.0.0.0:26657
# Explicit port for docker (can't compute with --env-file)
PBS_PORT=26657
#### ZK Proof Settings
# ELFs running in any zkVM should be deterministically / reproducible with Docker, see:
# https://docs.succinct.xyz/docs/sp1/writing-programs/compiling#production-builds
# IMPORTANT: the prover programs *embed the ELF* into their own bin,
# so this vat is only for development & compilation
# NOTE: MUST USE FULL PATH, used in scripts, so relative will fail.
ZK_PROGRAM_ELF_PATH=/full/path/to/target/elf-compilation/release/riscv32im-succinct-zkvm-elf/release/chacha-program
# See https://docs.succinct.xyz/docs/sp1/writing-programs/compiling#production-builds
ZK_PROGRAM_REPRODUCIBLE_ELF_PATH=/full/path/to/target/elf-compilation/docker/riscv32im-succinct-zkvm-elf/release/chacha-program
# 'mock' for generating mock proofs locally, 'cpu', 'cuda', or 'network'
SP1_PROVER=cuda
# If using the proving network, set to your whitelisted private key. For more information, see:
# https://docs.succinct.xyz/docs/generating-proofs/prover-network/key-setup
# IMPORTANT: the prover will know the entire input, so you very likely do NOT want this!
# TODO: This feature is NOT fully implemented! We need a TEE wrapper around proving remote for this.
NETWORK_RPC_URL=https://rpc.production.succinct.xyz
NETWORK_PRIVATE_KEY=
# Strategy one of "UNSPECIFIED_FULFILLMENT_STRATEGY", "HOSTED", "RESERVED", "AUCTION"
# You likely want HOSTED (the hardcoded default for network provers)
# https://github.com/succinctlabs/sp1/blob/11ab6b783cfce295b6f1113af088cc5f0a8caa5b/crates/sdk/src/network/prover.rs#L138
SP1_FULFILLMENT_STRATEGY=HOSTED
# Timeout in seconds for network auction to ultimately fail
PROOF_AUCTION_TIMEOUT_SECONDS_REMOTE=60
# Timeout in seconds for network proof requests to ultimately fail
PROOF_GEN_TIMEOUT_SECONDS_REMOTE=600
#### Dependent & Provider Settings
# To get a new token, see https://docs.celestia.org/tutorials/node-tutorial#auth-token
# Locally running nodes can use:
# celestia <node-type> auth admin --p2p.network <network>
CELESTIA_DOCKER_IMAGE=ghcr.io/celestiaorg/celestia-node:v0.24.1-mocha
# Required to set protocol http or https (ws/wss not supported), hostname/IP, and port
CELESTIA_NODE_RPC=http://localhost:26658
CELESTIA_CORE_GRPC=http://rpc-mocha.pops.one:9090
# If using https://www.quicknode.com/docs/celestia, both endpoints are at the same URL with an auth token in the path:
# CELESTIA_NODE_RPC=https://<your-instance>.celestia-mainnet.quiknode.pro/<your-token>
# CELESTIA_CORE_GRPC=https://<your-instance>.celestia-mainnet.quiknode.pro:9090
# Only needed if upstream Node requires it.
# - See https://docs.celestia.org/tutorials/node-tutorial#auth-token for running your own node
# - If using quicknode, this is your Token for both Node JSON RPC and Core/App gRPC
CELESTIA_NODE_WRITE_TOKEN=
CELESTIA_NETWORK=mocha
CELESTIA_NODE_TYPE=light
CELESTIA_NODE_NAME=celestia-light-mocha-4
CELESTIA_DATA_DIR=/home/you/.celestia-light-mocha-4
# WARNING: this should NOT be set in this file for production!
# A proper signer should be used!
# See https://github.com/eigerco/lumina/blob/8971af81742e97dbd675b2c812fe8eab5915776e/client/src/client.rs#L191
CELESTIA_SIGNING_KEY=
# ONLY used in docker, as parsing isn't supported in compose.yml etc.
CELESTIA_NODE_RPC_PROTOCOL=http
CELESTIA_NODE_ADDRESS=localhost
CELESTIA_NODE_RPC_PORT=26658
CELESTIA_NODE_P2P_PORT=2121