Docker Community Forums

Share and learn in the Docker community.

Install Oracle Client 11g R2 x86 in windows container


(Dockerml) #1

Hi.

I can’t install oracle client 11g R2 x86 in Windows Server 2016 Container using Dockerfile.

I tryed to locate some logs with command: docker logs -f containerID, but didn’t show anything.

This command: C:\Client_Oracle_11gR2_32\client\setup.exe -silent -nowait -responseFile C:\Client_Oracle_11gR2_32\client\client_oracle_11g_r2_x86.rsp
was successfully on Windows Server 2016 and a new container.

P.S. My custom image is created successfully, I’m using the image “microsoft/iis” from dockerhub with dockerfile “powershell” commands to create Virtual Site, AppPool and Site. It’s all right.

My problem is with the Dockerfile.

RUN [“C:\Client_Oracle_11gR2_32\client\setup.exe”, “-silent”, “-nowait”, “-responseFile C:\Client_Oracle_11gR2_32\client\client_oracle_11g_r2_x86.rsp”]

Someone has a suggestion?


(Chiefjustice7) #3

Hi,

did you get this problem solved?
I´m facing the same issue and have no clue how to get this working!

Greets
Matthias


(Millian32) #4

I have the same issue here as well!


(Jhawkesworth) #5

I am not sure if this is any help but maybe try

“-silent”, “-waitforcompletion”, “-noconsole”,

instead of

“-silent”, “-nowait”,


(Artisticcheese) #6

If you put -nowait then it means that docker will skip this line and go to next one since it does not know that it was completed. You probably shall remove that line at the minimum.
If I were you I would switch to powershell and CMD processor and use similar construct to below to launch installation executable

SHELL ["powershell", "-Command", "$ErrorActionPreference = 'Stop'; $ProgressPreference = 'Continue'; $verbosePreference='Continue';"]

Start-Process -filepath "<your exe>" -ArgumentList "<your arguments>" -PassThru | Wait-Process

(Millian32) #7

Thanks artisticcheese, I think you are on to something. My problem now is that I am trying to specify an argument for the oracle install for a response file and it doesnt like it…


(Millian32) #8

its like this and I have got this too work outside of the docker file: SYSTEM_DRIVE:\setup.exe_location> setup [-silent] “variable=setting” [-nowelcome] [-noconfig] [-nowait] -responseFile filename


(Artisticcheese) #9

Well remember inside docker file you run it via powershell prompt, so try the correct syntax inside powershell processor via Start-Process instead of cmd.exe


(Noeldcosta) #10

Could you please post the Dockerfile if you got it to work? Thanks!


(Juanactivus) #11

I have been struggling with this for a couple of days

Oracle setup installer and response files ready, I run the setup command with my response file on my own PC from an elevated cmd window and Oracle is installed, no problems found and oracledb installs according to my reponsefile

CMD command
setup -silent -responsefile d:\temp\database\response\db.rsp -skipPrereqs -noconfig -waitForCompletion

But even with silent switch the Oracle Universal Installer and some configuration still popup, that will not work when installing from an image or within a container itself
(see picture attached)

When try to replicate using my dockerfile or an error or nothing happens

Docker file
#Sample Dockerfile

#Indicates that the windowsservercore image will be used as the base image.
FROM microsoft/windowsservercore

#Create the working folder
RUN mkdir c:\temp\database

#Copy Oracle installers and response file to the working directory previously created
COPY database /temp/database

#Run the command
RUN Powershell.exe Start-Process -FilePath ‘C:\temp\database\setup.exe’ -argumentlist ‘-responsefile c:\temp\database\response\db.rsp’, ‘silent’ -wait

Once ready I run on an elevated powershell Window

PS D:\docker\dockerfiles> docker image build -t 2016oracle -f dockerfile .

As I said even that the build might finish successfully and without errors the application it is not installed or the container run for a moment and then exits few seconds later