Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions .github/workflows/pr-main_l2.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -150,6 +150,11 @@ jobs:
ETHREX_DEPLOYER_RISC0_CONTRACT_ADDRESS=0x00000000000000000000000000000000000000aa \
ETHREX_L2_VALIDIUM=${{ matrix.validium }} \
docker compose up contract_deployer

- name: Copy env to host
run: |
docker cp contract_deployer:/env/.env cmd/.env
cat cmd/.env

- name: Start Sequencer
run: |
Expand Down Expand Up @@ -215,6 +220,11 @@ jobs:
ETHREX_DEPLOYER_DEPLOY_BASED_CONTRACTS=true \
COMPILE_CONTRACTS=true \
docker compose up contract_deployer

- name: Copy env to host
run: |
docker cp contract_deployer:/env/.env cmd/.env
cat cmd/.env

- name: Install rex
run: |
Expand Down
4 changes: 3 additions & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -58,9 +58,11 @@ RUN cargo build --release $BUILD_FLAGS
# --- Final Image ---
# Copy the ethrex binary into a minimalist image to reduce bloat size.
# This image must have glibc and libssl
FROM gcr.io/distroless/cc-debian12
FROM debian:12-slim
WORKDIR /usr/local/bin

RUN apt-get update && apt-get install -y --no-install-recommends libssl3
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

this is because we need ssl that it is not included on the base image


COPY cmd/ethrex/networks ./cmd/ethrex/networks
COPY --from=builder /ethrex/target/release/ethrex .

Expand Down
1 change: 0 additions & 1 deletion crates/l2/docker-compose-l2-store.overrides.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ services:
volumes:
- ./store:/store
command: >
l2
--network /genesis/l2.json
--http.addr 0.0.0.0
--http.port 1729
Expand Down
1 change: 0 additions & 1 deletion crates/l2/docker-compose-l2-web3signer.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ services:

ethrex_l2:
command: >
l2
--network /genesis/l2.json
--http.addr 0.0.0.0
--http.port 1729
Expand Down
22 changes: 14 additions & 8 deletions crates/l2/docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
volumes:
env:

services:
ethrex_l1:
container_name: ethrex_l1
Expand All @@ -16,7 +19,7 @@ services:
volumes:
# NOTE: DOCKER_ETHREX_WORKDIR is defined in crates/l2/Makefile
- ./contracts:${DOCKER_ETHREX_WORKDIR}/contracts
- ../../cmd/.env:${DOCKER_ETHREX_WORKDIR}/.env
- env:/env/
- ../../fixtures/genesis/l1-dev.json:${DOCKER_ETHREX_WORKDIR}/fixtures/genesis/l1-dev.json
- ../../fixtures/genesis/l2.json:${DOCKER_ETHREX_WORKDIR}/fixtures/genesis/l2.json
- ../../fixtures/keys/private_keys_l1.txt:${DOCKER_ETHREX_WORKDIR}/fixtures/keys/private_keys_l1.txt
Expand All @@ -27,7 +30,7 @@ services:
# NOTE: The paths in the env variables must match those
# specified in the `volumes:` section
- ETHREX_DEPLOYER_L1_PRIVATE_KEY=${ETHREX_DEPLOYER_PRIVATE_KEY:-0x385c546456b6a603a1cfcaa9ec9494ba4832da08dd6bcf4de9a71e4a01b74924}
- ETHREX_DEPLOYER_ENV_FILE_PATH=${DOCKER_ETHREX_WORKDIR}/.env
- ETHREX_DEPLOYER_ENV_FILE_PATH=/env/.env
- ETHREX_DEPLOYER_GENESIS_L1_PATH=${DOCKER_ETHREX_WORKDIR}/fixtures/genesis/l1-dev.json
- ETHREX_DEPLOYER_GENESIS_L2_PATH=${DOCKER_ETHREX_WORKDIR}/fixtures/genesis/l2.json
- ETHREX_DEPLOYER_PRIVATE_KEYS_FILE_PATH=${DOCKER_ETHREX_WORKDIR}/fixtures/keys/private_keys_l1.txt
Expand All @@ -51,9 +54,11 @@ services:
- COMPILE_CONTRACTS=true
depends_on:
- ethrex_l1
entrypoint:
- /bin/bash
- -c
- touch /env/.env; ./ethrex l2 deploy "$0" "$@"
command: >
l2
deploy
--randomize-contract-deployment

ethrex_l2:
Expand All @@ -76,14 +81,15 @@ services:
- ETHREX_STATE_UPDATER_SEQUENCER_REGISTRY=${ETHREX_STATE_UPDATER_SEQUENCER_REGISTRY:-0x0000000000000000000000000000000000000000}
- ETHREX_COMMITTER_COMMIT_TIME=${ETHREX_COMMITTER_COMMIT_TIME:-60000}
- ETHREX_WATCHER_WATCH_INTERVAL=${ETHREX_WATCHER_WATCH_INTERVAL:-12000}
env_file:
- ../../cmd/.env
volumes:
- ../../fixtures/genesis/l2.json:/genesis/l2.json
- ../../cmd/.env:/.env:ro
- env:/env/
entrypoint:
- /bin/bash
- -c
- export $(xargs < /env/.env); ./ethrex l2 "$0" "$@"
# ETHREX_WATCHER_BRIDGE_ADDRESS and ETHREX_COMMITTER_ON_CHAIN_PROPOSER_ADDRESS are set in the .env file by the contract_deployer service.
command: >
l2
--network /genesis/l2.json
--http.addr 0.0.0.0
--http.port 1729
Expand Down