sql >> データベース >  >> NoSQL >> Redis

gradleはローカル作品を構築します。 Dockerコンテナーでは、そうではありません。なぜ?

    Java Snappyのネイティブライブラリ(JNIを介してロードされる)は、glibcに対してコンパイルされます。 Alpine Linux(コンテナのベース)は、ソース互換であるがバイナリ互換ではないmusl libcを使用します(基本的に、ネイティブライブラリをmuslに対してコンパイルすると機能しますが、glibcに対してコンパイルすると機能しません) muslを使用)。

    3つのオプションがあります:

    1. java-snappy-nativeをインストールします (musl用に構築されたネイティブライブラリが含まれています)Alpineコンテナに入れ、org.xerial.snappy.use.systemlib=trueを設定します (プレインストールされたネイティブライブラリを使用するようにJavaライブラリに指示します)。 現在、snappyもインストールする必要があります 誰かがその依存関係を上記のパッケージに追加できなかったためです。
    2. glibcでベースコンテナを使用する
    3. Alpineコンテナにglibcをインストールします(実際には推奨されません)



    1. Sidekiqの労働条件

    2. MongoDB:静的な値を持つ集計$project追加フィールド

    3. HadoopInputFormatとMapReduceのInputFormatのタイプ

    4. DBRefでmongodbをクエリする方法