INSTALAR ORACLE Database 12c CON DOCKER

Jeremy Andress
3 min readJun 6, 2019

--

Instalar docker

Primero Actualizar Lista de Paquetes

$ sudo apt update

Despues instalar paquetes que le permiten a apt usar paquetes mediante HTTPS

$ sudo apt install apt-transport-https ca-certificates curl software-properties-commonsudo apt install apt-transport-https ca-certificates curl software-properties-common

A continuacion agregar clave GPG para el repositorio de docker en su sistema

$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

Agregar el repositorio a las fuentes APT

$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"

Despues actualizar los paquetes de la base de datos

$ sudo apt update

Asegurese de que va instalar desde el repositorio de Docker en vez del repositorio de ubunto predeterminado :

$ apt-cache policy docker-ce

Deberia ver un resultado parecido a este:

docker-ce:
Instalados: 5:18.09.6~3-0~ubuntu-bionic
Candidato: 5:18.09.6~3-0~ubuntu-bionic
Tabla de versión:
*** 5:18.09.6~3-0~ubuntu-bionic 500
500 https://download.docker.com/linux/ubuntu bionic/stable amd64 Packages

Luego instale docker

$ sudo apt install docker-ce

Una vez docker instalado, deberia tener el daemon iniciado y el proceso habilitado para iniciar el arranque. Verificar con este comando

$ sudo systemctl status docker

Deberia ver algo parecido a esto :

● docker.service - Docker Application Container Engine
Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2019-06-02 14:50:58 -04; 4h 38min ago
Docs: https://docs.docker.com

Ejecutar Docker sin el comando sudo (Opcional)

Para evitar escribir sudo antes de docker, debes ejecutar el siguiente comando

$ sudo usermod -aG docker ${USER}

Para aplicar la nueva membresía de grupo, debe cerrar sesión en el servidor y volver a iniciarla, o puede escribir lo siguiente:

$ su - ${USER}

Confirme que se haya agregado su usuario al grupo de docker escribiendo:

$ id -nG

Deberia recibir una respuesta como esta

Output
jere sudo docker

Si necesitas agregar un usuario al grupo docker y no ha iniciado sesion de usuario, declare el nombre de usuario explicitamente usando el siguiente comando

$ sudo usermod -aG docker username

Crear Cuenta en Docker

Entra al sitio oficial de docker para crear una cuenta de Docker

https://hub.docker.com/

Una vez creada una cuenta ingrese el siguiente comando

$ docker loginOUTPUT
Login Succeeded

MONTAR ORACLE EN DOCKER

Primero necesitamos descargar el contenedor de oracle de su repocitorio

$ docker pull store/oracle/database-enterprise:12.2.0.1

Deberias tener una respuesta parecida :

12.2.0.1: Pulling from store/oracle/database-enterprise
4ce27fe12c04: Pull complete
9d3556e8e792: Pull complete
fc60a1a28025: Pull complete
0c32e4ed872e: Pull complete
b465d9b6e399: Pull complete
Digest: sha256:40760ac70dba2c4c70d0c542e42e082e8b04d9040d91688d63f728af764a2f5d
Status: Downloaded newer image for store/oracle/database-enterprise:12.2.0.1

A continuacion iniciaremos el contenedor,con el comando -p redirigiremos los puertos de 8080 del contenedor al puerto 8080 de su maquina, igualmente con el 1521. Con el comando — name le asignaremos un nombre a nuestro contenedor y finalmente la direccion de la imagen donde sera lanzado.

$ docker run -d -p 8080:8080 -p 1521:1521 --name oracle-db store/oracle/database-enterprise:12.2.0.1

Con el siguiente comando comprobaremos el estado de la iniciazion de oracle, esto puede desmorar

$ docker logs oracle-db

Despues comprobar con el siguiente comando

$ docker ps

Una vez HEALTH cambie a HEALTHY estara listo para usar como se ve en el siguiente OUTPUT

CONTAINER ID        IMAGE                                       COMMAND                  CREATED             STATUS                   PORTS                                                      NAMES
7b23a966358d store/oracle/database-enterprise:12.2.0.1 "/bin/sh -c '/bin/ba…" 4 minutes ago Up 4 minutes (healthy) 0.0.0.0:1521->1521/tcp, 0.0.0.0:8080->8080/tcp, 5500/tcp oracle-db

Ahora Iniciaremos SQL PLUS con el siguiente comando

$ docker exec -it oracle-db bash -c "source /home/oracle/.bashrc; sqlplus /nolog"

Para agregar nuevos usuarios escriba el siguiente comando en sqlplus

alter session set "_ORACLE_SCRIPT"=true;

Y felicitaciones, ya tienes Oracle listo para ser usado :)

Para correr el contenedor despues de detenerlo, solo debes escribir el siguiente comando

$ docker start [id]

--

--