docker-omnidb
docker-omnidb copied to clipboard
Can't logging into Oracle DB
Hi,
I try ur Docker file to manage my Oracle Database and there's an error message
Plis ur help, i want to try this amazing management in my oracle's databases~
Hi @anubischpc,
Could you please include the specific version of your db so I can try it out locally. The error indicates that some kind of Oracle Client library is missing from the docker container.
Once I know the database info I can try these instructions on installing the Oracle Instant Client.
If you are up for it then you can also try fixing this issue yourself and submitting a PR. I am happy to help you with the PR in any way.
Hi @taivokasper
My oracle db version is 11.2.0
I appreciate very much ur time and be waiting for ur response.
Hi @anubischpc ,
Searching on the OmniDB project, I found 2 issues related to the problem you are encountering:
- https://github.com/OmniDB/OmniDB/issues/469
- https://github.com/OmniDB/OmniDB/issues/473
As @taivokasper explained in a message: In order to use connection to ORACLE
database, ORACLE instant client
needs to be installed using the procedure described here.
This procedure isn't realized while building the current container image.
@taivokasper, I was wondering if omnidb plugin
should be added to the container image, the same question occurs for ORACLE client
.
Or is it possible to consider a modular approach?
Hi,
Getting Oracle Instant Client installed on Alpine linux is a lost cause. I will end up installing the whole world with no success. I believe any other distribution is better suited for this.
I did get connecting to Oracle database working by using the following Dockerfile based on debian:
FROM debian:stretch-slim
MAINTAINER Taivo Käsper <[email protected]>
ENV OMNIDB_VERSION 2.15.0
RUN apt-get update \
&& apt-get install -y curl unzip make build-essential python3-pip libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev wget llvm libncurses5-dev libncursesw5-dev xz-utils \
&& curl -Lo /tmp/OmniDB.zip https://github.com/OmniDB/OmniDB/archive/${OMNIDB_VERSION}.zip \
&& unzip /tmp/OmniDB.zip -d /opt/ \
&& rm -f /tmp/OmniDB.zip \
&& mkdir /etc/omnidb
RUN cd /opt/OmniDB-${OMNIDB_VERSION} && pip3 install --upgrade pip==9.0.3 && echo "Begin install cherrypy" && pip3 install cherrypy && echo "Begin install requirements" && pip3 install -r requirements.txt
RUN curl "https://raw.githubusercontent.com/bumpx/oracle-instantclient/master/instantclient-basiclite-linux.x64-18.3.0.0.0dbru.zip" -o /tmp/oracle-instantclient-basiclite.zip \
&& mkdir /oracle-instant-client \
&& unzip /tmp/oracle-instantclient-basiclite.zip -d /oracle-instant-client
ENV LD_LIBRARY_PATH /oracle-instant-client/instantclient_18_3
USER omnidb
EXPOSE 8080 25482
WORKDIR /opt/OmniDB-${OMNIDB_VERSION}/OmniDB
ENTRYPOINT ["python3", "omnidb-server.py", "--host=0.0.0.0", "--port=8080", "-d", "/etc/omnidb"]
@thomasboussekey you raise a good question regarding Omnidb plugin
and Oracle Instant Client
. On one side installing all plugins and extra software to single Docker image would be the most convenient for me and people using the image. On the other hand this would make the image significantly bigger and more bloated. Having "modular
" image with tag for every extra would make it a tag nightmare for me and users and would not solve the case where you need two or more plugins enabled in Omnidb. If you know any Docker images that have solved similar case and has good best practices then let me know.
I have 3 solutions to this issue:
- I do nothing and don't preinstall Oracle Instant Client or Omnidb plugins
- I install Oracle Instant Client and Omnidb plugins all to a single Docker image
- I have a docker tag for base Omnidb installation and based on that image I create more images with docker tag per extra software.
@anubischpc and @thomasboussekey which do you think is the best solution for this issue, question about Omnidb plugins and similar issues in the future?
Hi! @taivokasper
I think that that a mix solution is the answer, for example, having a base docker image for omnidb and other with the full characteristics activated, like pluggings and the Oracle Instant Client.
I try to find more docker images for omnidb with the OIC but i can't find any.
Again, thanks for ur time and I'll be waiting for ur response.
Hello @taivokasper & @anubischpc ,
Sorry for the delay!
The solution offering 2 types of install:
- one minimal
- the second
all-inclusive
seems the best compromise!
Have a nice day, Thomas