LoginSignup
0
1

More than 5 years have passed since last update.

alpineにlibnsl.soをインストールした備忘録

Last updated at Posted at 2017-11-28

alpineのphp7からoracleに接続しようとして、以下のエラーが出たときの試行錯誤

PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php7/modules/oci8.so' - Error loading shared library libnsl.so.1: No such file or directory (needed by /usr/local/lib/instantclient_11_2/libclntsh.so.11.1) in Unknown on line 0

alpineにはlib***のデータを入れるためのパッケージがapkでインストールできなかったりします。
他のサイトにはもうdebianとかcentosとか使おうぜって書いてあるけど、軽量化したいからalpineつかってるんだが?ってなります。
ソースから入れましょう。

以下dockerfileの抜粋です。

FROM alpine

RUN apk --update add \
    gettext-dev \
    git \
    libtirpc-dev \
    libtool \
    -- nocache

RUN wget https://github.com/thkukuk/libnsl/archive/v*.*.*/libnsl-*.*.*.tar.gz &&
    tar xf libnsl-*.*.*.tar.gz &&
    cd libnsl-*.*.*/ &&
    sh autogen.sh &&
    ./configure &&
    make &&
    make install

RUN ln -s /usr/lib/libnsl.so.2 /lib/libnsl.so.1

別にイメージ大きくなってもいいやって人はcentsとかでパッケージを一括インストールしたほうが圧倒的に楽です。
毎回毎回パッケージをインストールし直して一喜一憂するのが本当に手間。。。
いずれ時間があったら全体的な構成含め書きます。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1