Maintaining @testcontainers | Contributing to OSS | Automating builds, tests and infrastructures | Making devs happy | @ZEISS_Group | Docker Captain

Behind a guitar
Super excited to join the @Docker Captains Program 🎉 Honored to see my work on Testcontainers for .NET (and soon Docker.DotNet) being recognized. Looking forward to contributing to Docker, .NET, and open-source projects with the amazing folks in the program :tc-love:
2
4
15
1,165
New in Testcontainers for .NET 4.16: the Elasticsearch module now exposes GetOtlpEndpoint(). You can send real OpenTelemetry traces straight to Elasticsearch 9.5+ and verify they're actually indexed. No collector needed. @elastic
2
2
10
409
Elasticsearch 9.5+ accepts OTLP over HTTP, apps can send traces straight to the container. Use HttpProtobuf and GetOtlpEndpoint() + "v1/traces", then query Elasticsearch to verify the spans arrived. Test the real export path, not just span creation.
13
Testcontainers built through the Docker Engine API, which has no BuildKit. No secret mounts, no here-documents. New in Testcontainers for .NET 4.16: the image build runs on BuildKit, from a sidecar container.
1
1
3
95
The sidecar is a Docker CLI container with the Docker socket mounted. It runs "docker buildx build" against the daemon's own BuildKit, the build cache is the one your terminal already filled. dotnet.testcontainers.org/ap…
16
🚀 Testcontainers for .NET 4.16.0 has landed! BuildKit support, a common WithSsl builder API, and a round of fixes for Kafka, PostgreSQL and more: github.com/testcontainers/te…. Huge thanks to our community for the contributions and feedback 🧡.
2
3
188
Of course. @testcontainers .
Share some awesome free software you’ve used⬇️👀
1
1
361
We forked Docker.DotNet into @testcontainers after the original repo went inactive (no maintainer response, no merged PRs, no fixes for a long time). We're now actively developing it. GitHub still defaults new PRs to the dead upstream repo, confusing contributors.
3
9
1,563
Everyone adds a retry policy. Almost nobody tests it. It sits in the pipeline for two years, and the first time it runs for real is during an incident. Bad moment to learn its timeout is longer than the one above it. Put Toxiproxy in front of Redis and break the network.
2
1
6
285
Toxiproxy sits between the test and the dependency on the same Docker network. Toxics go on while the test runs: latency, bandwidth caps, dropped connections, slow close. Toxicity is a probability, so you can degrade 30% of calls instead of all of them. dotnet.testcontainers.org/mo…
1
46
Andre Hofmeister retweeted
It's a plane, it's a bird, no... it's @EdduMelendez our skydiving @testcontainers maintainer and tc-java language lead!
1
4
14
794
Andre Hofmeister retweeted
Thanks to @getgalaxyio (a fellow OSS project) for sponsoring 🫶
3
742
Andre Hofmeister retweeted
The third guest post on Internals for Interns is live! "Understanding Testcontainers: The Ryuk Reaper" is written by @mdelapenya, a friend from the Go community, Staff Engineer at @Docker and the maintainer of testcontainers-go. He also writes the "Understanding Testcontainers" series on his own blog, so check that out. In this post he talks about Ryuk, a small sidecar container whose only job is deleting the Docker resources your tests created, when your tests die. The design has three pieces, and they're all beautifully small: - Labels answer "what's mine?" - A held TCP connection that works as a deadman switch. - A grace period stops false positives. Read it here: internals-for-interns.com/po… #Go #Docker #Testcontainers
3
16
82
3,476
🚀 Testcontainers for .NET 4.15 is here! And one feature deserves a special shoutout: Docker Compose support 🎉 A request dating all the way back to 2019, with many upvotes from the community, has finally made it into .NET: github.com/testcontainers/te….
2
4
25
7,668
Find out more about Docker Compose here: dotnet.testcontainers.org/ap….
1
247
@mjovanovictech That could be interesting for you.
1
1
185
Most test setups describe the stack twice. Once in compose.yml, once again in the fixture, and the two drift. New in Testcontainers for .NET 4.15: ComposeBuilder runs "docker compose up" for you, inside a container. One description of the stack, nothing extra to install on CI.
1
1
2
211
Every run gets a random project name, so parallel CI jobs do not collide. A service port does not have to be published in the compose file to be reachable from the test. An ambassador container proxies it: dotnet.testcontainers.org/ap…
35
A new release of Cake.Sonar is out (github.com/cake-contrib/Cake…), now compatible with Cake v6! Cake.Sonar is another project I somehow became an accidental maintainer of, apparently that’s becoming a bit of a pattern 😅.
41
Andre Hofmeister retweeted
Testcontainers saves me so much time with integration testing... I don't know what I would do without it. You can run your external services in throwaway Docker containers, which you can access from your tests. Here's an example of how to spin up SQL Server in a container. Ready to take your integration testing in .NET to the next level? You will love this article: milanjovanovic.tech/blog/tes…
7
6
72
5,635