3

我需要将管理员与 oracle 连接,但官方图像不支持它。是否有任何用于 oracle 连接的管理员图像?或者如果有人可以指导我如何在当前图像中安装 oci8 扩展。

4

2 回答 2

0

Dockerfile:

FROM adminer:4.8.1


ENV LD_LIBRARY_PATH /usr/local/instantclient_21_1
ENV ORACLE_HOME /usr/local/instantclient_21_1

USER root
RUN apk update && apk upgrade --available \
 && apk add --no-cache bash autoconf build-base composer libaio libnsl libc6-compat busybox-extras

ADD tmp/. /tmp/.


RUN unzip -d /usr/local/ /tmp/instantclient-basic-linux.x64-21.1.0.0.0.zip
RUN unzip -d /usr/local/ /tmp/instantclient-sdk-linux.x64-21.1.0.0.0.zip
RUN unzip -d /usr/local/ /tmp/instantclient-sqlplus-linux.x64-21.1.0.0.0.zip

RUN ln -s /usr/lib/libnsl.so.2 /usr/lib/libnsl.so.1
RUN ln -s /lib/libc.so.6 /usr/lib/libresolv.so.2
RUN ln -s /lib64/ld-linux-x86-64.so.2 /usr/lib/ld-linux-x86-64.so.2
RUN pear upgrade --force && pecl upgrade

ADD tmp/instantclient.ini /etc/php.d/instantclient.ini

RUN docker-php-ext-configure oci8 --with-oci8=instantclient,$ORACLE_HOME
RUN docker-php-ext-install oci8

oracle 即时客户端下载地址: https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-basic-linux.x64-21.1.0.0.0.zip https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-sqlplus-linux.x64-21.1.0.0.0.zip https://download.oracle.com/otn_software/linux/instantclient/211000/instantclient-sdk-linux.x64-21.1.0.0.0.zip

instantclient.ini文件内容是extension=oci8.so

于 2021-08-30T02:47:31.453 回答
0

您可以使用以下图像连接到 oracle https://hub.docker.com/r/soivangoi/nginx-php-adminer-oci8

供服务器使用,请注意语法如下:

host_ip:port/service_name(如 .tnsnames.ora 中所述)

于 2020-11-25T11:04:05.447 回答