sql >> Database >  >> NoSQL >> Redis

gradle build lokale werken. In docker-container niet. WAAROM?

De native bibliotheek van Java Snappy (geladen via JNI) is gecompileerd tegen glibc. Alpine Linux (waar uw container op is gebaseerd) gebruikt de musl libc die bron-compatibel is maar niet binair-compatibel (dit betekent in feite dat als u de native bibliotheek compileert tegen musl, het zal werken, maar als het is gecompileerd tegen glibc zal het niet werken met musl).

Je hebt drie opties:

  1. Installeer java-snappy-native (die een native bibliotheek bevat die is gebouwd voor musl) in uw Alpine-container en stel org.xerial.snappy.use.systemlib=true in (vertelt de Java-bibliotheek om de vooraf geïnstalleerde native bibliotheek te gebruiken). Momenteel moet je ook snappy install installeren omdat iemand die afhankelijkheid niet aan het bovenstaande pakket heeft toegevoegd.
  2. Gebruik een basiscontainer met glibc
  3. Installeer glibc in uw Alpine-container (niet echt aanbevolen)



  1. MongoDB - Query's uitvoeren tussen een tijdbereik van uren

  2. Een database maken in Mongo:kan geen verbinding maken, verbinding maken is mislukt

  3. 8 manieren om de dag van een date te krijgen in MongoDB

  4. MongoDB selecteer waar in array van _id?