Se o arranque falla ao obter o arquivo de MongoDB, configure o descargador de paquetes de Flapdoodle. A lista de proxies HTTP pode fornecer puntos finais candidatos para unha ruta de descarga pública. O cliente da base de datos aínda non fixo a súa conexión posterior.

A personalización moderna baseada en transicións fornece o proxy mediante DownloadPackage:

Mongod mongod = new Mongod() {
    @Override
    public DownloadPackage downloadPackage() {
        return DownloadPackage.withDefaults()
            .withDownloadConfig(DownloadConfig.defaults()
                .withProxyFactory(() -> Proxys.httpProxy("proxy.example", 8080)));
    }
};

Use as clases das bibliotecas Flapdoodle MongoDB e embedded-process seleccionadas e, despois, use este Mongod personalizado na aplicación ou na configuración de probas. A lambda fornece o proxy HTTP; o URL do arquivo segue a ser o destino da descarga.

Un arranque correcto desde a caché non usa ese proxy. A transición do paquete comproba primeiro a caché de descargas, así que distinga un acerto de caché dunha obtención real do arquivo ao avaliar o resultado do arranque.

Este patrón pertence á API de transicións. Os construtores RuntimeConfig antigos e o antigo DownloadConfigBuilderCustomizer de Spring Boot usan interfaces de personalización e distribución de caché distintas; faga coincidir o exemplo coa xeración de dependencias da aplicación.

Artigos relacionados