Ubuntu – Can Docker help me install Oracle 11g database on Ubuntu

centoslxcoracleredhatUbuntu

We are struggling with a common problem of trying to provide an Oracle 11g instance for our developers to test with. Our standard build agents are based on Ubuntu 12.04 but Oracle supports only RedHat based OS's.

There are some hacks about installing Oracle on Ubuntu floating around the net but they seem to be very fragile and a matter of hit-and-miss.

We want to avoid having to support an entire build server Puppet configuration on top of RedHat(/CentOS) just in order to support Oracle so I was beginning to wonder whether we can employ Docker to provide a RedHat-like environment required just for Oracle on top of our standard Ubuntu systems. The idea is that Oracle will run in its own container but the rest of the build agent will still run on standard Ubuntu, able to talk to Oracle over TCP.

I know what LXC's are and the difference between them and full-fledged virtualization like KVM/VirtualBox etc, but I was wondering whether it could still be possible.

Thanks.

Best Answer

Here is my fork:

  • Reduce size of image from 3.8G to 825MB
  • Database initialization moved out of the image build phase
  • Now database initializes at the containeer startup with no database files mounted
  • Media reuse support outside of container
  • Added graceful shutdown on container stop
  • Removed sshd

You may check here:
https://registry.hub.docker.com/u/sath89/oracle-xe-11g/
https://github.com/MaksymBilenko/docker-oracle-xe-11g