diff --git a/docs/get-started/connect/testnet.md b/docs/get-started/connect/testnet.md index 2ef8ac7c7..9c89e2637 100644 --- a/docs/get-started/connect/testnet.md +++ b/docs/get-started/connect/testnet.md @@ -9,15 +9,19 @@ import TabItem from '@theme/TabItem'; # Connect to a testnet -Run Teku as a consensus client with any execution client on a testnet (for example [Holesky](https://github.com/eth-clients/holesky) or -[Sepolia](https://github.com/eth-clients/sepolia)). +Run Teku as a consensus client with any execution client on a testnet (for example [Holesky](https://github.com/eth-clients/holesky), +[Ephemery](https://ephemery.dev/), or [Sepolia](https://github.com/eth-clients/sepolia)). If you're using [Besu](https://besu.hyperledger.org/en/stable/) as an execution client, you can follow the [Besu and Teku testnet tutorial](https://besu.hyperledger.org/en/latest/public-networks/tutorials/besu-teku-testnet/). -:::note +:::note Notes -Sepolia is a permissioned network and you can't run a validator client on it without [requesting to become a validator](https://notes.ethereum.org/zvkfSmYnT0-uxwwEegbCqg) first. +- Ephemery is a single network that rolls back to the genesis after a set period of time. + Ephemery is focused on short-term and heavy testing use cases. + It avoids problems like insufficient testnet funds, inactive validators, state bloat, and similar + issues faced by long-running testnets. +- Sepolia is a permissioned network and you can't run a validator client on it without [requesting to become a validator](https://notes.ethereum.org/zvkfSmYnT0-uxwwEegbCqg) first. You can connect your consensus client using the beacon node only, without any validator duties. ::: @@ -44,8 +48,8 @@ If you're running a beacon node only, skip to the [next step](#3-start-the-execu If you're also running a validator client, create a test Ethereum address (you can do this in [MetaMask](https://metamask.zendesk.com/hc/en-us/articles/360015289452-How-to-create-an-additional-account-in-your-wallet)). Fund this address with testnet ETH (32 ETH and gas fees for each validator) using a faucet. -See the list of [Holesky faucets](https://github.com/eth-clients/holesky#metadata) or -[Sepolia faucets](https://github.com/eth-clients/sepolia#meta-data-sepolia). +See the list of [Holesky faucets](https://github.com/eth-clients/holesky#metadata), [Sepolia faucets](https://github.com/eth-clients/sepolia#meta-data-sepolia), +or [Ephemery faucets](https://ephemery-faucet.pk910.de/). :::note @@ -53,7 +57,7 @@ If you're unable to get ETH using the faucet, you can ask for help on the [EthSt ::: -Generate validator keys for one or more validators using the [Holesky Staking Launchpad](https://holesky.launchpad.ethereum.org/). +Generate validator keys for one or more validators using the [Holesky Staking Launchpad](https://holesky.launchpad.ethereum.org/) or [Ephemery Staking Launchpad](https://launchpad.ephemery.dev/). Remember the passwords that you use to create the validator keys, because you need them to [create the validator password files](#create-a-password-file-for-each-validator-key). @@ -69,7 +73,6 @@ If specifying directories, password files must have the same name as the keys, b - If the Launchpad creates a key named `keystore-m_12381_3600_0_0_0-1596485378.json`, then the password file must be named `keystore-m_12381_3600_0_0_0-1596485378.txt`. - - The password file format follows [`EIP-2335`](https://eips.ethereum.org/EIPS/eip-2335#password-requirements) requirements (UTF-8 encoded file, unicode normalization, and control code removal). @@ -91,34 +94,48 @@ Open a new terminal window. To run Teku as a beacon node only (without validator duties), run the following command or [specify the options in a configuration file](../../how-to/configure/use-config-file.md): - + + +```bash +teku \ + --network=holesky \ + --ee-endpoint=http://localhost:8551 \ + --ee-jwt-secret-file= \ + --metrics-enabled=true \ + --rest-api-enabled=true \ + --checkpoint-sync-url= +``` + + + ```bash teku \ - --network=holesky \ - --ee-endpoint=http://localhost:8551 \ - --ee-jwt-secret-file= \ - --metrics-enabled=true \ - --rest-api-enabled=true \ - --checkpoint-sync-url= + --network=ephemery \ + --ee-endpoint=http://localhost:8551 \ + --ee-jwt-secret-file= \ + --metrics-enabled=true \ + --rest-api-enabled=true \ + --checkpoint-sync-url= ``` - - + + ```bash teku \ - --network=sepolia \ - --ee-endpoint=http://localhost:8551 \ - --ee-jwt-secret-file= \ - --metrics-enabled=true \ - --rest-api-enabled=true \ - --checkpoint-sync-url= + --network=sepolia \ + --ee-endpoint=http://localhost:8551 \ + --ee-jwt-secret-file= \ + --metrics-enabled=true \ + --rest-api-enabled=true \ + --checkpoint-sync-url= ``` - + + Specify: - The path to the `jwtsecret.hex` file generated in [step 1] using the @@ -132,7 +149,7 @@ You can modify the option values and add other [command line options](../../refe You can run the Teku beacon node and validator client as a [single process](#single-process) or as [separate processes](#separate-processes). -You can check your validator status by searching your Ethereum address on the [Holesky Beacon Chain explorer](https://holesky.beaconcha.in/). +You can check your validator status by searching your Ethereum address on the [Holesky Beacon Chain explorer](https://holesky.beaconcha.in/) or [Ephemery Beacon Chain Explorer](https://beaconchain.ephemery.dev). Your validator might take multiple days to activate and start proposing blocks. You can also use [Prometheus and Grafana](../../how-to/monitor/use-metrics.md) to monitor your nodes. @@ -143,7 +160,7 @@ To run the Teku beacon node and validator client in a single process, run the fo [specify the options in the configuration file](../../how-to/configure/use-config-file.md): - + ```bash teku \ @@ -157,12 +174,29 @@ teku \ --validator-keys=:[,:,...] ``` - - + + +```bash +teku \ + --network=ephemery \ + --ee-endpoint=http://localhost:8551 \ + --ee-jwt-secret-file= \ + --metrics-enabled=true \ + --rest-api-enabled=true \ + --checkpoint-sync-url= \ + --validators-proposer-default-fee-recipient= \ + --validator-keys=:[,:,...] +``` + + + + +:::note Sepolia is a permissioned network and you can't run a validator client on it without [requesting to become a validator](https://notes.ethereum.org/zvkfSmYnT0-uxwwEegbCqg) first. +::: - + Specify: @@ -184,21 +218,30 @@ To run the Teku beacon node and validator client as separate processes, first [s On a separate machine, run Teku using the [`validator-client`](../../reference/cli/subcommands/validator-client.md) subcommand: - + ```bash teku validator-client \ - --network=holesky \ - --beacon-node-api-endpoint= \ - --validator-keys=:[,:,...] + --network=holesky \ + --beacon-node-api-endpoint= \ + --validator-keys=:[,:,...] ``` - - + + + +:::note Coming soon +Support for starting Teku as a separate validator client on the Ephemery testnet is coming soon. +::: + + + +:::note Sepolia is a permissioned network and you can't run a validator client on it without [requesting to become a validator](https://notes.ethereum.org/zvkfSmYnT0-uxwwEegbCqg) first. +::: - + Specify: @@ -221,10 +264,10 @@ Syncing the execution client can take several days. ## 6. Stake ETH Stake your testnet ETH for one or more validators using the -[Holesky Staking Launchpad](https://holesky.launchpad.ethereum.org/). +[Holesky Staking Launchpad](https://holesky.launchpad.ethereum.org/) or [Ephemery Staking Launchpad](https://launchpad.ephemery.dev). You can check your validator status by searching your Ethereum address on the -[Holesky Beacon Chain explorer](https://holesky.beaconcha.in/). +[Holesky Beacon Chain explorer](https://holesky.beaconcha.in/) or [Ephemery Beacon Chain explorer](https://beaconchain.ephemery.dev). It may take up to multiple days for your validator to be activated and start proposing blocks. diff --git a/docs/get-started/install/run-docker-image.md b/docs/get-started/install/run-docker-image.md index 19f43a0d7..d8e532b44 100644 --- a/docs/get-started/install/run-docker-image.md +++ b/docs/get-started/install/run-docker-image.md @@ -141,6 +141,66 @@ services: ``` + + + +```yaml +--- +version: "3.4" +services: + besu_node: + image: hyperledger/besu:latest + command: + [ + "--network=ephemery", + "--data-path=/var/lib/besu/data", + "--host-allowlist=*", + "--sync-mode=FAST", + "--rpc-http-enabled", + "--rpc-http-cors-origins=*", + "--rpc-http-api=ETH,NET,CLIQUE,DEBUG,MINER,NET,PERM,ADMIN,EEA,TXPOOL,PRIV,WEB3", + "--engine-jwt-secret=/var/lib/besu/data/token.txt", + "--engine-host-allowlist=*", + "--engine-rpc-enabled=true", + ] + volumes: + - ./besu:/var/lib/besu/data + ports: + # Map the p2p port(30303), RPC HTTP port(8545), and engine port (8551) + - "8545:8545" + - "8551:8551" + - "30303:30303/tcp" + - "30303:30303/udp" + + teku_node: + environment: + - "JAVA_OPTS=-Xmx4g" + image: consensys/teku:latest + command: + [ + "--network=ephemery", + "--data-base-path=/var/lib/teku/data", + "--validators-proposer-default-fee-recipient=YOUR_WALLET", + "--ee-endpoint=http://besu_node:8551", + "--ee-jwt-secret-file=/var/lib/teku/data/token.txt", + "--validator-keys=/var/lib/teku/data/validator/keys:/var/lib/teku/data/validator/passwords", + "--p2p-port=9000", + "--rest-api-enabled=true", + "--rest-api-docs-enabled=true", + ] + depends_on: + - besu_node + volumes: + - ./teku:/var/lib/teku/data + ports: + # Map the p2p port(9000) and REST API port(5051) + - "9000:9000/tcp" + - "9000:9000/udp" + - "5051:5051" +``` + + + ```yaml diff --git a/docs/how-to/configure/tls.md b/docs/how-to/configure/tls.md index ccf6fe2b5..bffced739 100644 --- a/docs/how-to/configure/tls.md +++ b/docs/how-to/configure/tls.md @@ -32,11 +32,12 @@ The [Teku and Web3Signer TLS configuration tutorial] provides instructions to cr Start Web3Signer with the TLS configuration options and specify the keystore and known clients file. ```bash -web3signer --key-store-path=/Users/me/keyFiles/ \ ---tls-keystore-file=/Users/me/certs/web3signer_keystore.p12 \ ---tls-keystore-password-file=/Users/me/certs/web3signer_keystore_password.txt \ ---tls-known-clients-file=/Users/me/certs/knownClients.txt \ -eth2 +web3signer \ + --key-store-path=/Users/me/keyFiles/ \ + --tls-keystore-file=/Users/me/certs/web3signer_keystore.p12 \ + --tls-keystore-password-file=/Users/me/certs/web3signer_keystore_password.txt \ + --tls-known-clients-file=/Users/me/certs/knownClients.txt \ + eth2 ``` :::note @@ -47,22 +48,25 @@ eth2 ## Start Teku -Start Teku with the external signer, keystore, and truststore details: +Start Teku with the external signer, keystore, and truststore details. +For example: ```bash -teku --network=holesky \ ---eth1-endpoint=http://localhost:8545 \ ---validators-external-signer-public-keys=0xa99a...e44c,0xb89b...4a0b \ ---validators-external-signer-url=https://localhost:9000 \ ---validators-external-signer-truststore=/Users/me/certs/web3signer_truststore.p12 \ ---validators-external-signer-truststore-password-file=/Users/me/certs/truststore_pass.txt \ ---validators-external-signer-keystore=/Users/me/certs/teku_client_keystore.p12 \ ---validators-external-signer-keystore-password-file=/Users/me/certs/teku_keystore_password.txt +teku \ + --network=holesky \ + --eth1-endpoint=http://localhost:8545 \ + --validators-external-signer-public-keys=0xa99a...e44c,0xb89b...4a0b \ + --validators-external-signer-url=https://localhost:9000 \ + --validators-external-signer-truststore=/Users/me/certs/web3signer_truststore.p12 \ + --validators-external-signer-truststore-password-file=/Users/me/certs/truststore_pass.txt \ + --validators-external-signer-keystore=/Users/me/certs/teku_client_keystore.p12 \ + --validators-external-signer-keystore-password-file=/Users/me/certs/teku_keystore_password.txt ``` In the command: -- Specify the JSON-RPC URL of the ETH1 node using [`--eth1-endpoint`](../../reference/cli/index.md#eth1-endpoint-eth1-endpoints). +- Specify the network using [`--network`](../../reference/cli/index.md#network). +- Specify the JSON-RPC URL of the execution layer client using [`--eth1-endpoint`](../../reference/cli/index.md#eth1-endpoint-eth1-endpoints). - Specify the validator's public keys using [`--validators-external-signer-public-keys`](../../reference/cli/index.md#validators-external-signer-public-keys). - Specify the URL of the running external signer using [`--validators-external-signer-url`](../../reference/cli/index.md#validators-external-signer-url). - Specify the truststore and password file using [`validators-external-signer-truststore`](../../reference/cli/index.md#validators-external-signer-truststore) and [`validators-external-signer-truststore-password-file`](../../reference/cli/index.md#validators-external-signer-truststore-password-file). diff --git a/docs/how-to/use-external-signer/use-web3signer.md b/docs/how-to/use-external-signer/use-web3signer.md index 71eba5fe7..3b6e0a698 100644 --- a/docs/how-to/use-external-signer/use-web3signer.md +++ b/docs/how-to/use-external-signer/use-web3signer.md @@ -16,17 +16,22 @@ Teku supports the [Web3Signer] external signing client. ## Start Teku Start Teku and specify the external signer options. +For example: ```bash -teku --network=holesky \ ---eth1-endpoint=http://localhost:8545 \ ---validators-external-signer-public-keys=0xa99a...e44c,0xb89b...4a0b \ ---validators-external-signer-url=http://localhost:9000 +teku \ + --network=holesky \ + --eth1-endpoint=http://localhost:8545 \ + --validators-external-signer-public-keys=0xa99a...e44c,0xb89b...4a0b \ + --validators-external-signer-url=http://localhost:9000 ``` The command line specifies the following: -- The validator public keys for which Web3Signer signs attestations and blocks using [`--validators-external-signer-public-keys`](../../reference/cli/index.md#validators-external-signer-public-keys). +- The network using [`--network`](../../reference/cli/index.md#network). +- The JSON-RPC URL of the execution layer client using [`--eth1-endpoint`](../../reference/cli/index.md#eth1-endpoint-eth1-endpoints). +- The validator public keys for which Web3Signer signs attestations and blocks using + [`--validators-external-signer-public-keys`](../../reference/cli/index.md#validators-external-signer-public-keys). - The URL of the Web3Signer client using [`--validators-external-signer-url`](../../reference/cli/index.md#validators-external-signer-url). :::note diff --git a/docs/reference/cli/index.md b/docs/reference/cli/index.md index 63437dae8..55587e125 100644 --- a/docs/reference/cli/index.md +++ b/docs/reference/cli/index.md @@ -1737,15 +1737,16 @@ The default is `mainnet`. Possible values are: -| Network | Chain | Type | Description | -|:----------|:----------------|:-----------|:------------------------------------------------------------------------| -| `mainnet` | Consensus layer | Production | Main network | -| `minimal` | Consensus layer | Test | Used for local testing and development networks | -| `gnosis` | Consensus layer | Production | Network for the [Gnosis chain](https://www.gnosis.io/) | -| `holesky` | Consensus layer | Test | Multi-client testnet | -| `sepolia` | Consensus layer | Test | Multi-client testnet | -| `chiado` | Consensus layer | Test | Gnosis [testnet](https://docs.gnosischain.com/concepts/networks/chiado) | -| `lukso` | Consensus layer | Production | Network for the [Lukso chain](https://lukso.network/) | +| Network | Chain | Type | Description | +|:-----------|:----------------|:-----------|:------------------------------------------------------------------------| +| `mainnet` | Consensus layer | Production | Main network | +| `holesky` | Consensus layer | Test | Multi-client testnet | +| `ephemery` | Consensus layer | Test | Multi-client testnet | +| `sepolia` | Consensus layer | Test | Multi-client testnet | +| `minimal` | Consensus layer | Test | Used for local testing and development networks | +| `gnosis` | Consensus layer | Production | Network for the [Gnosis chain](https://www.gnosis.io/) | +| `chiado` | Consensus layer | Test | Gnosis [testnet](https://docs.gnosischain.com/concepts/networks/chiado) | +| `lukso` | Consensus layer | Production | Network for the [Lukso chain](https://lukso.network/) | Predefined networks can provide defaults such as the initial state of the network, bootnodes, and the address of the deposit contract. diff --git a/docs/reference/cli/subcommands/admin.md b/docs/reference/cli/subcommands/admin.md index dad7d3440..e2334273f 100644 --- a/docs/reference/cli/subcommands/admin.md +++ b/docs/reference/cli/subcommands/admin.md @@ -309,15 +309,16 @@ Predefined network configuration. Accepts a predefined network name, or file pat Possible values are: -| Network | Chain | Type | Description | -| --- | --- | --- | --- | -| `mainnet` | Consensus layer | Production | Main network | -| `minimal` | Consensus layer | Test | Used for local testing and development networks | -| `holesky` | Consensus layer | Test | Multi-client testnet | -| `gnosis` | Consensus layer | Production | Network for the [Gnosis chain](https://www.gnosis.io/) | -| `sepolia` | Consensus layer | Test | Multi-client testnet | -| `chiado` | Consensus layer | Test | Gnosis [testnet](https://docs.gnosischain.com/about/networks/chiado/) | -| `lukso` | Consensus layer | Production | Network for the [Lukso chain](https://lukso.network/) | +| Network | Chain | Type | Description | +|------------|-----------------|------------|-----------------------------------------------------------------------| +| `mainnet` | Consensus layer | Production | Main network | +| `holesky` | Consensus layer | Test | Multi-client testnet | +| `ephemery` | Consensus layer | Test | Multi-client testnet | +| `sepolia` | Consensus layer | Test | Multi-client testnet | +| `minimal` | Consensus layer | Test | Used for local testing and development networks | +| `gnosis` | Consensus layer | Production | Network for the [Gnosis chain](https://www.gnosis.io/) | +| `chiado` | Consensus layer | Test | Gnosis [testnet](https://docs.gnosischain.com/about/networks/chiado/) | +| `lukso` | Consensus layer | Production | Network for the [Lukso chain](https://lukso.network/) | Predefined networks can provide defaults such the initial state of the network, bootnodes, and the address of the deposit contract. @@ -616,14 +617,15 @@ Predefined network configuration. Accepts a predefined network name, or file pat Possible values are: -| Network | Chain | Type | Description | -| --- | --- | --- | --- | -| `mainnet` | Consensus layer | Production | Main network | -| `minimal` | Consensus layer | Test | Used for local testing and development networks | -| `gnosis` | Consensus layer | Production | Network for the [Gnosis chain](https://www.gnosis.io/) | -| `holesky` | Consensus layer | Test | Multi-client testnet | -| `sepolia` | Consensus layer | Test | Multi-client testnet | -| `chiado` | Consensus layer | Test | Gnosis [testnet](https://docs.gnosischain.com/about/networks/chiado/) | -| `lukso` | Consensus layer | Production | Network for the [Lukso chain](https://lukso.network/) | +| Network | Chain | Type | Description | +|------------|-----------------|------------|-----------------------------------------------------------------------| +| `mainnet` | Consensus layer | Production | Main network | +| `holesky` | Consensus layer | Test | Multi-client testnet | +| `ephemery` | Consensus layer | Test | Multi-client testnet | +| `sepolia` | Consensus layer | Test | Multi-client testnet | +| `minimal` | Consensus layer | Test | Used for local testing and development networks | +| `gnosis` | Consensus layer | Production | Network for the [Gnosis chain](https://www.gnosis.io/) | +| `chiado` | Consensus layer | Test | Gnosis [testnet](https://docs.gnosischain.com/about/networks/chiado/) | +| `lukso` | Consensus layer | Production | Network for the [Lukso chain](https://lukso.network/) | Predefined networks can provide defaults such the initial state of the network, bootnodes, and the address of the deposit contract. diff --git a/docs/reference/cli/subcommands/migrate-database.md b/docs/reference/cli/subcommands/migrate-database.md index 57de17d90..20f6612db 100644 --- a/docs/reference/cli/subcommands/migrate-database.md +++ b/docs/reference/cli/subcommands/migrate-database.md @@ -166,12 +166,13 @@ The default is `mainnet`. Possible values are: -| Network | Chain | Type | Description | -| :-- | :-- | :-- | :-- | -| `mainnet` | Consensus layer | Production | Main network | -| `minimal` | Consensus layer | Test | Used for local testing and development networks | -| `gnosis` | Consensus layer | Production | Network for the [Gnosis chain](https://www.gnosis.io/) | -| `holesky` | Consensus layer | Test | Multi-client testnet | -| `sepolia` | Consensus layer | Test | Multi-client testnet | -| `chiado` | Consensus layer | Test | Gnosis [testnet](https://docs.gnosischain.com/about/networks/chiado/) | -| `lukso` | Consensus layer | Production | Network for the [Lukso chain](https://lukso.network/) | +| Network | Chain | Type | Description | +|------------|-----------------|------------|-----------------------------------------------------------------------| +| `mainnet` | Consensus layer | Production | Main network | +| `holesky` | Consensus layer | Test | Multi-client testnet | +| `ephemery` | Consensus layer | Test | Multi-client testnet | +| `sepolia` | Consensus layer | Test | Multi-client testnet | +| `minimal` | Consensus layer | Test | Used for local testing and development networks | +| `gnosis` | Consensus layer | Production | Network for the [Gnosis chain](https://www.gnosis.io/) | +| `chiado` | Consensus layer | Test | Gnosis [testnet](https://docs.gnosischain.com/about/networks/chiado/) | +| `lukso` | Consensus layer | Production | Network for the [Lukso chain](https://lukso.network/) | diff --git a/docs/reference/cli/subcommands/slashing-protection.md b/docs/reference/cli/subcommands/slashing-protection.md index 49a7b5452..da2051627 100644 --- a/docs/reference/cli/subcommands/slashing-protection.md +++ b/docs/reference/cli/subcommands/slashing-protection.md @@ -384,15 +384,16 @@ Predefined network configuration. Accepts a predefined network name, or file pat Possible values are: -| Network | Chain | Type | Description | -| --- | --- | --- | --- | -| `mainnet` | Consensus layer | Production | Main network | -| `minimal` | Consensus layer | Test | Used for local testing and development networks | -| `gnosis` | Consensus layer | Production | Network for the [Gnosis chain](https://www.gnosis.io/) | -| `holesky` | Consensus layer | Test | Multi-client testnet | -| `sepolia` | Consensus layer | Test | Multi-client testnet | -| `chiado` | Consensus layer | Test | Gnosis [testnet](https://docs.gnosischain.com/about/networks/chiado/) | -| `lukso` | Consensus layer | Production | Network for the [Lukso chain](https://lukso.network/) | +| Network | Chain | Type | Description | +|------------|-----------------|------------|-----------------------------------------------------------------------| +| `mainnet` | Consensus layer | Production | Main network | +| `holesky` | Consensus layer | Test | Multi-client testnet | +| `ephemery` | Consensus layer | Test | Multi-client testnet | +| `sepolia` | Consensus layer | Test | Multi-client testnet | +| `minimal` | Consensus layer | Test | Used for local testing and development networks | +| `gnosis` | Consensus layer | Production | Network for the [Gnosis chain](https://www.gnosis.io/) | +| `chiado` | Consensus layer | Test | Gnosis [testnet](https://docs.gnosischain.com/about/networks/chiado/) | +| `lukso` | Consensus layer | Production | Network for the [Lukso chain](https://lukso.network/) | Predefined networks can provide defaults such the initial state of the network, bootnodes, and the address of the deposit contract. diff --git a/docs/tutorials/configure-external-signer-tls.md b/docs/tutorials/configure-external-signer-tls.md index 546019083..0939bb25b 100644 --- a/docs/tutorials/configure-external-signer-tls.md +++ b/docs/tutorials/configure-external-signer-tls.md @@ -142,11 +142,12 @@ This example disables [Web3Signer slashing protection], this is not recommended Start Web3Signer using the [keystore and password](#web3signer-keystore-and-password-file), and [known clients file](#3-create-the-known-clients-file) created earlier. ```bash -web3signer --key-store-path=/Users/me/keyFiles/ \ ---tls-keystore-file=/Users/me/certs/web3signer_keystore.p12 \ ---tls-keystore-password-file=/Users/me/certs/web3signer_keystore_password.txt \ ---tls-known-clients-file=/Users/me/certs/knownClients.txt \ -eth2 --slashing-protection-enabled=false +web3signer \ + --key-store-path=/Users/me/keyFiles/ \ + --tls-keystore-file=/Users/me/certs/web3signer_keystore.p12 \ + --tls-keystore-password-file=/Users/me/certs/web3signer_keystore_password.txt \ + --tls-known-clients-file=/Users/me/certs/knownClients.txt \ + eth2 --slashing-protection-enabled=false ``` ## 5. Start Teku @@ -158,14 +159,15 @@ This example connects to the Holesky testnet, and connects to the execution clie ::: ```bash -teku --network=holesky \ ---ee-endpoint=http://127.0.0.1:8551 \ ---validators-external-signer-public-keys=0xa99a...e44c,0xb89b...4a0b \ ---validators-external-signer-url=https://localhost:9000 \ ---validators-external-signer-truststore=/Users/me/certs/web3signer_truststore.p12 \ ---validators-external-signer-truststore-password-file=/Users/me/certs/truststore_pass.txt \ ---validators-external-signer-keystore=/Users/me/certs/teku_client_keystore.p12 \ ---validators-external-signer-keystore-password-file=/Users/me/certs/teku_keystore_password.txt +teku \ + --network=holesky \ + --ee-endpoint=http://127.0.0.1:8551 \ + --validators-external-signer-public-keys=0xa99a...e44c,0xb89b...4a0b \ + --validators-external-signer-url=https://localhost:9000 \ + --validators-external-signer-truststore=/Users/me/certs/web3signer_truststore.p12 \ + --validators-external-signer-truststore-password-file=/Users/me/certs/truststore_pass.txt \ + --validators-external-signer-keystore=/Users/me/certs/teku_client_keystore.p12 \ + --validators-external-signer-keystore-password-file=/Users/me/certs/teku_keystore_password.txt ```