Skip to content

Conversation

@YusukeShimizu
Copy link
Contributor

@YusukeShimizu YusukeShimizu commented Apr 28, 2025

Issue: #563

Reduces the image size for the gl-testserver by switching to a multi-stage Dockerfile build.
The previous image was around 9 GiB, causing long build/fetch times and taking up unnecessary space in development environments. With this change, the image footprint has been reduced to approximately 500MB.

docker images
REPOSITORY                      TAG       IMAGE ID       CREATED             SIZE
gltestserver                    latest    9fe837b67bad   About an hour ago   525MB

Also enable multi-architecture support.

@YusukeShimizu YusukeShimizu marked this pull request as draft April 28, 2025 01:56
@YusukeShimizu YusukeShimizu marked this pull request as ready for review April 28, 2025 03:11
@YusukeShimizu
Copy link
Contributor Author

The Check Self / Linux (pull_request) CI test failed, so I’m looking into what went wrong. It doesn’t seem to be caused by the PR itself, so it’s possible that the test might be flaky.

Introduce multi-stage build to separate build from runtime.
Reduce final image size
Keep minimal Python env for test usage.
Also enable multi-architecture support to ensure proper
downloads based on the build environment.
This fixes issues on ARM64 where the x86_64
binary was previously being downloaded.
@cdecker cdecker force-pushed the slim-testserver-docker branch from d3683c5 to 970d775 Compare May 9, 2025 10:08
@cdecker
Copy link
Collaborator

cdecker commented May 9, 2025

This is great work, thank you very much @YusukeShimizu 🙏

@cdecker cdecker enabled auto-merge (rebase) May 9, 2025 10:09
@cdecker cdecker merged commit 7a79263 into Blockstream:main May 9, 2025
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants