Skip to content

Container build logs aren't very useful because they're encoded #1049

@andrewaylett

Description

@andrewaylett

Expected Behaviour
The configuration page says to set DEBUG=testcontainers* to get all logs. This does indeed return all logs, but the build logs (tagged testcontainers:build) aren't very useful when using BuildKit because they're all base64 encoded.

I expect to get a readable log message like:

  testcontainers:build [localhost/9e016c4ce696:bad89bfd767c] 
    [202/554] cc -Ilibvips/arithmetic/libarithmetic.a.p -Ilibvips/arithmetic -I../libvips/arithmetic -I. -I.. -Ilibvips/include -I../libvips/include -Ilibvips/include/vips -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/libmount -I/usr/include/blkid -I/usr/include/pango-1.0 -I/usr/include/harfbuzz -I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/fribidi -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/x86_64-linux-gnu -I/usr/include/librsvg-2.0 -I/usr/include/gdk-pixbuf-2.0 -I/usr/lib/x86_64-linux-gnu/hdf5/serial/include -I/usr/include/OpenEXR -I/usr/include/Imath -I/usr/include/openjpeg-2.5 -fvisibility=hidden -fdiagnostics-color=always -DNDEBUG -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -std=gnu99 -DG_DISABLE_CAST_CHECKS -DG_DISABLE_CHECKS -DG_DISABLE_ASSERT -Werror=pointer-arith -g -O2 -Werror=implicit-function-declaration -ffile-prefix-map=/build/vips/vips-8.16.1=. -fstack-protector-strong -fstack-clash-protection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -fPIC -pthread -DHAVE_CONFIG_H=1 -MD -MQ libvips/arithmetic/libarithmetic.a.p/relational.c.o -MF libvips/arithmetic/libarithmetic.a.p/relational.c.o.d -o libvips/arithmetic/libarithmetic.a.p/relational.c.o -c ../libvips/arithmetic/relational.c

Actual Behaviour
Testcontainers logs a raw encoded log message:

  testcontainers:build [localhost/9e016c4ce696:bad89bfd767c] {"id":"moby.buildkit.trace","aux":"Gv4KCkdzaGEyNTY6MWFmZTZmYjgyOGE4NDdkNWIzMGM1ODUwYzdlOGE1MjM0N2FkNjc0NmMyNjA2NjdlY2RiMjk2NmMxODhlMTUwORILCKbq78IGENqM21cYASKjClsyMDIvNTU0XSBjYyAtSWxpYnZpcHMvYXJpdGhtZXRpYy9saWJhcml0aG1ldGljLmEucCAtSWxpYnZpcHMvYXJpdGhtZXRpYyAtSS4uL2xpYnZpcHMvYXJpdGhtZXRpYyAtSS4gLUkuLiAtSWxpYnZpcHMvaW5jbHVkZSAtSS4uL2xpYnZpcHMvaW5jbHVkZSAtSWxpYnZpcHMvaW5jbHVkZS92aXBzIC1JL3Vzci9pbmNsdWRlL2dsaWItMi4wIC1JL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9nbGliLTIuMC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL2xpYm1vdW50IC1JL3Vzci9pbmNsdWRlL2Jsa2lkIC1JL3Vzci9pbmNsdWRlL3BhbmdvLTEuMCAtSS91c3IvaW5jbHVkZS9oYXJmYnV6eiAtSS91c3IvaW5jbHVkZS9mcmVldHlwZTIgLUkvdXNyL2luY2x1ZGUvbGlicG5nMTYgLUkvdXNyL2luY2x1ZGUvZnJpYmlkaSAtSS91c3IvaW5jbHVkZS9jYWlybyAtSS91c3IvaW5jbHVkZS9waXhtYW4tMSAtSS91c3IvaW5jbHVkZS94ODZfNjQtbGludXgtZ251IC1JL3Vzci9pbmNsdWRlL2xpYnJzdmctMi4wIC1JL3Vzci9pbmNsdWRlL2dkay1waXhidWYtMi4wIC1JL3Vzci9saWIveDg2XzY0LWxpbnV4LWdudS9oZGY1L3NlcmlhbC9pbmNsdWRlIC1JL3Vzci9pbmNsdWRlL09wZW5FWFIgLUkvdXNyL2luY2x1ZGUvSW1hdGggLUkvdXNyL2luY2x1ZGUvb3BlbmpwZWctMi41IC1mdmlzaWJpbGl0eT1oaWRkZW4gLWZkaWFnbm9zdGljcy1jb2xvcj1hbHdheXMgLUROREVCVUcgLURfRklMRV9PRkZTRVRfQklUUz02NCAtV2FsbCAtV2ludmFsaWQtcGNoIC1zdGQ9Z251OTkgLURHX0RJU0FCTEVfQ0FTVF9DSEVDS1MgLURHX0RJU0FCTEVfQ0hFQ0tTIC1ER19ESVNBQkxFX0FTU0VSVCAtV2Vycm9yPXBvaW50ZXItYXJpdGggLWcgLU8yIC1XZXJyb3I9aW1wbGljaXQtZnVuY3Rpb24tZGVjbGFyYXRpb24gLWZmaWxlLXByZWZpeC1tYXA9L2J1aWxkL3ZpcHMvdmlwcy04LjE2LjE9LiAtZnN0YWNrLXByb3RlY3Rvci1zdHJvbmcgLWZzdGFjay1jbGFzaC1wcm90ZWN0aW9uIC1XZm9ybWF0IC1XZXJyb3I9Zm9ybWF0LXNlY3VyaXR5IC1mY2YtcHJvdGVjdGlvbiAtV2RhdGUtdGltZSAtRF9GT1JUSUZZX1NPVVJDRT0yIC1mUElDIC1wdGhyZWFkIC1ESEFWRV9DT05GSUdfSD0xIC1NRCAtTVEgbGlidmlwcy9hcml0aG1ldGljL2xpYmFyaXRobWV0aWMuYS5wL3JlbGF0aW9uYWwuYy5vIC1NRiBsaWJ2aXBzL2FyaXRobWV0aWMvbGliYXJpdGhtZXRpYy5hLnAvcmVsYXRpb25hbC5jLm8uZCAtbyBsaWJ2aXBzL2FyaXRobWV0aWMvbGliYXJpdGhtZXRpYy5hLnAvcmVsYXRpb25hbC5jLm8gLWMgLi4vbGlidmlwcy9hcml0aG1ldGljL3JlbGF0aW9uYWwuYwo="} +125ms

Steps to Reproduce

  1. Clone https://github.com/andrewaylett/testcontainers-log-demo
  2. Run npm run test
  3. Observe encoded log entries in the output

Environment Information

  • Operating System: MacOS
  • Docker Version: Docker Desktop 4.41.2
  • Node version: 22.15.0
  • Testcontainers version: 11.0.3

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions