Skip to content

ijaureguialzo/oracle-docker

Repository files navigation

Oracle Database con Docker

Instrucciones y fichero de configuración para arrancar una base de datos Oracle Database Express Edition en local mediante Docker.

Prerrequisitos

  1. Instalar Docker Desktop para Windows y macOS o Linux.

  2. En Windows, instalar Scoop usando PowerShell:

    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser
    [Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
    Invoke-Expression (New-Object System.Net.WebClient).DownloadString('https://get.scoop.sh')

    Y después instalar los comandos necesarios:

    scoop install make
  3. En Macs con procesador Apple Silicon (M1, M2...), instalar Colima usando Homebrew:

    brew install colima
  4. Instalar Oracle SQL Developer (requiere iniciar sesión con una cuenta de Oracle) o JetBrains DataGrip (requiere una suscripción).

  5. Clonar este repositorio:

    git clone https://github.com/ijaureguialzo/oracle-docker.git

    Si el comando anterior no funciona, habrá que instalar Git en el sistema.

Arrancar la base de datos

  1. En un terminal, situarse en la carpeta que contiene el fichero docker-compose.yml.

    cd oracle-docker
  2. Copiar el fichero env-example a .env:

    En macOS y Linux:

    cp env-example .env

    En Windows:

    copy env-example .env

    ⚠️ Es recomendable cambiar las contraseñas por defecto.

    La versión de Oracle a utilizar se puede configurar en el fichero .env y se corresponde con las etiquetas disponibles aquí y aquí.

  3. Arrancar el servidor:

    make start

    Si al arrancar da error porque el puerto está ocupado, se puede elegir otro editando el fichero .env.

  4. Cuando haya arrancado (tarda unos minutos) aparecerá (healthy) en la salida del comando make ps.

    Se puede ver el progreso de arranque mediante el comando make logs.

    Para parar el servidor hay que utilizar el comando make stop.

Datos de conexión

Clave Valor
Usuario SYS
Contraseña La configurada en el fichero .env
Tipo de conexión Básico
Rol SYSDBA
Host localhost
Puerto 1521
SID XE (hasta la versión 21) o FREE (a partir de la versión 23)

Script para crear usuario

Para crear un usuario normal con el que trabajar, el fichero crear_usuario.sql contiene un script que se puede adaptar y ejecutar estando conectado como SYS al servidor.

Conexión al servidor de base de datos

Desde SQL Developer

Desde DataGrip