REFERENCIA DOCUMENTACIÓN OFICIAL https://github.com/oracle/docker-images/tree/main/OracleDatabase/SingleInstance
- Necesitas cumplir los requisitos previos
- Construir la imagen del contenedor ORACLE que vayas a usar
- Crear y usar contenedor ORACLE
Instalar:
- docker
- docker-compose
Antes de poder crear tu contenedor de base de datos tiene que existir una imagen en tu repositorio local de docker images
$ docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
oracle-database 11.2.0-XE 98da15b6c229 4 minutes ago 1.15GB
oraclelinux 7-slim 5fe1636f17bb 33 hours ago 132MB
Para crear las imágenes como se ha mostrado en el ejemplo anterior sigue las instrucciones para cada versión
Descargar binarios de Docker Express 11 en carpeta 11.2.0.2
https://drive.google.com/open?id=11sTooKthWuSnDLeRYlc_F05PCVlwdE1y&authuser=0
Construir docker image
chmod u+x buildContainerImage.sh
./buildContainerImage.sh -v 11.2.0.2 -t oracle-database:11.2.0-XE -x -i
Descargar binarios de ORACLE DATABASE 18.4.0 en carpeta 18.4.0 https://drive.google.com/file/d/1StCsG2DSnvWGOPRj0ROphjm9fSpKk1Up/view?usp=sharing
Construir docker image
chmod u+x buildContainerImage.sh
./buildContainerImage.sh -v 18.4.0 -t oracle-database:18.4.0-XE -x -i
Descargar binarios de ORACLE DATABASE 19.3.0 en carpeta 19.3.0 https://drive.google.com/file/d/1Li62iexlLNA-sSZ1Jx6luGFtLHq1cKTf/view?usp=sharing
Construir docker image
chmod u+x buildContainerImage.sh
./buildContainerImage.sh -v 19.3.0 -t oracle-database:19.3.0-SE -s -i
Descargar binarios de ORACLE DATABASE 19.3.0 en carpeta 19.3.0 https://drive.google.com/file/d/1Li62iexlLNA-sSZ1Jx6luGFtLHq1cKTf/view?usp=sharing
Construir docker image
chmod u+x buildContainerImage.sh
./buildContainerImage.sh -v 19.3.0 -t oracle-database:19.3.0-EE -e -i
Las imagenes dependen de otra imagen oraclelinux que se crea conjuntamente. En caso de error borrar todas las imágenes que puedan interferir antes de construir.
- Sitúate en la carpeta en la que tengas el docker-compose.yml
- Copia el fichero de la version a utilizar al fichero docker-compose.yml
- Crear contenedor
docker-compose up -d
- Consultar si ha arrancado
docker-compose logs
- Esperar al mensaje
#########################
DATABASE IS READY TO USE!
#########################
Ya puedes conectar por el puerto 1521
Con un poco de conocimiento de docker se pueden conseguir fácilmente muchas funciones adicionales que se encuentran en la documentación oficial referenciada al inicio de este documento. Por ejemplo:
- Ejecución automática de scripts tras la creación del contenedor
- Montar volúmenes para mantener persistencia de la bd aún cuando se borra o recrea el contenedor