我在设置连接到Oracle数据库的php时遇到问题,遇到以下消息:
Step 4/7 : ADD instantclient-basic-linux.x64-12.1.0.2.0.zip /opt/oracle
ERROR: Service 'php-apache' failed to build: ADD failed: stat /var/lib/docker/tmp/docker-builder164874438/instantclient-basic-linux.x64-12.1.0.2.0.zip: no such file or directoryDockerfile
FROM php:7.4-apache
RUN docker-php-ext-install pdo pdo_mysql mysqliORACLE oci
RUN mkdir /opt/oracle \
&& cd /opt/oracle
ADD instantclient-basic-linux.x64-12.1.0.2.0.zip /opt/oracle
ADD instantclient-sdk-linux.x64-12.1.0.2.0.zip /opt/oracle安装Oracle Instant Client
RUN unzip /opt/oracle/instantclient-basic-linux.x64-12.1.0.2.0.zip -d /opt/oracle \
&& unzip /opt/oracle/instantclient-sdk-linux.x64-12.1.0.2.0.zip -d /opt/oracle \
&& ln -s /opt/oracle/instantclient_12_1/libclntsh.so.12.1 /opt/oracle/instantclient_12_1/libclntsh.so \
&& ln -s /opt/oracle/instantclient_12_1/libclntshcore.so.12.1 /opt/oracle/instantclient_12_1/libclntshcore.so \
&& ln -s /opt/oracle/instantclient_12_1/libocci.so.12.1 /opt/oracle/instantclient_12_1/libocci.so \
&& rm -rf /opt/oracle/*.zip安装Oracle extensions
RUN echo 'instantclient,/opt/oracle/instantclient_12_1/' | pecl install oci8 \
&& docker-php-ext-enable \
oci8 \
&& docker-php-ext-configure pdo_oci --with-pdo-oci=instantclient,/opt/oracle/instantclient_12_1,12.1 \
&& docker-php-ext-install \
pdo_oci 发布于 2020-07-27 19:10:25
您的错误听起来像是简单的路径问题,或者没有您认为的zip文件。
我建议你看看甲骨文的示例Dockerfile文件:https://github.com/oracle/docker-images/tree/master/OracleLinuxDevelopers,例如这个Oracle。
也可以查看Docker for Oracle Database Applications in Node.js and Python,它显示了即时客户端。
你真的需要使用即时客户端12.1吗?Oracle Instant Client 19c可以连接到Oracle DB 11.2或更高版本,并且更容易获得(它不需要单击即可下载)。
https://stackoverflow.com/questions/63108722
复制相似问题