Hello everybody,
the commit 8d07e454b9c54825dc9084d68b78210c66753240 makes the image useless in integration testing: Container takes ages to start and the freshly created database is dropped afterwards.
Having the default database created for the base image would be more useful, imho. Or it would be nice if you provide a sample who I can create the database in an image derived from Oracles.
Thanks,
Michael.
So a sample is good enough?
Yes, a default database would be enough (I didn't check which kind of transaction optimization it uses).
To get this straight: the image is still ok, but I would to derive from it and build my own in most cases. As it was before the commit mentioned, I can start it, use it and throw it away.
On my 4 and 2 year old Macs with 16Gb Ram both and SSDs it takes about 40 minutes to build with a database and will be about 19Gb. Without database it takes about 15 minutes and is 11Gb.
One solution would be a parameter if a database should be created or not and an additional tag (with or without db)
All you have to do is build the usual way then you write a second Dockerfile that extends the first one, and then you call runOracle.sh during build time. Yes, it now means you have two steps. But the first image will be the DB just installed, no database provisioned. Push that to a registry server, and easily reuse it across your org.
The image is not useless. Just requires extra thorough thought. :-)
Yeah, I was to harsh, that's true. Thought that after hitting send. Sorry for the title.
It's up to you but IMHO it was more convenient before that change and having a look at MySQL, Postgres or other database images: they can be used right away after start.
The reason for that change was as a precursor to enable data containers, i.e. to keep the data files alive after container recreation. Once this is in place you can again reuse an existing database.
I will add an example how to extend the image to have a already created database in the meantime.
Thanks @gvenzl for clarifying your reason!
Most helpful comment
The reason for that change was as a precursor to enable data containers, i.e. to keep the data files alive after container recreation. Once this is in place you can again reuse an existing database.
I will add an example how to extend the image to have a already created database in the meantime.