default SELF withDockerfileFromBuilder(Consumer<DockerfileBuilder> builderConsumer) {
        DockerfileBuilder builder = new DockerfileBuilder();

        builderConsumer.accept(builder);

        // return Transferable because we want to build Dockerfile's content lazily
        return ((SELF) this).withFileFromTransferable(
                "Dockerfile",
                new Transferable() {
                    @Getter(lazy = true)
                    private final byte[] bytes = builder.build().getBytes();

                    @Override
                    public long getSize() {
                        return getBytes().length;
                    }

                    @Override
                    public String getDescription() {
                        return "Dockerfile: " + builder;
                    }
                }
            );
    }
BuildContextBuilder's trait for Dockerfile-based resources.
core/src/main/java/org/testcontainers/images/builder/traits/DockerfileTrait.java