Instalación de la imagen de Db2 Community Edition Docker en sistemas Linux

Puede utilizar Db2® Community Edition para desarrollar, probar y crear rápidamente aplicaciones para trabajar con las cargas de trabajo operativas y analíticas de su empresa.

Acerca de esta tarea

Este procedimiento se puede utilizar para instalar una imagen de Docker de Db2 11.5.4 Community Edition en cualquiera de los siguientes entornos de escritorio de Linux de 64 bits:
  • Ubuntu versiones 16.04 de soporte a largo plazo (LTS), 18.04 (LTS), 18.10, o 19.04,
  • CentOS versión 7.1 o superior
  • Fedora versiones 28 o 29
  • Debian versiones 9 o 10
La imagen de Db2 Community Edition Docker tiene las siguientes limitaciones de uso:
  • Límite de memoria: 16 GB
  • Límite principal: 4 núcleos

Procedimiento

  1. Desde la línea de mandatos, cree un nuevo directorio para la imagen de Docker:
    mkdir Docker
  2. Vaya a este directorio especificando el mandato siguiente:
    cd Docker
    Nota: Docker utiliza un archivo de configuración, config.json, para el almacenamiento no cifrado de credenciales. Como resultado, antes de especificar el nombre de usuario y la contraseña, puede recibir el mensaje, WARNING: Error loading config file...., seguido de la ubicación predeterminada esperada del archivo config.json .

    Este mensaje no le impedirá entrar en sus credenciales y acceder al entorno de Docker. Una vez que haya iniciado la sesión, Docker crea un archivo config.json y almacena sus credenciales en el archivo en la ubicación predeterminada. Consulte docker login para obtener información sobre la creación de almacenamiento seguro de sus credenciales de Docker .

  3. Inicie sesión en el contenedor Docker:
    sudo docker login
  4. Extraer la imagen de Db2 Docker de ICR:
    docker pull icr.io/db2_community/db2
  5. Cree un archivo de variables de entorno, .env_list, para la imagen de Db2 Community Edition :
    vi .env_list
  6. Pegue lo siguiente en el archivo de variables de entorno:
    LICENSE=accept
    DB2INSTANCE=db2inst1
    DB2INST1_PASSWORD=password
    DBNAME=testdb
    BLU=false
    ENABLE_ORACLE_COMPATIBILITY=false
    UPDATEAVAIL=NO
    TO_CREATE_SAMPLEDB=false
    REPODB=false
    IS_OSXFS=false
    PERSISTENT_HOME=true
    HADR_ENABLED=false
    ETCD_ENDPOINT=
    ETCD_USERNAME=
    ETCD_PASSWORD=
    donde
    • LICENSE acepta los términos y condiciones del software Db2 contenido en esta imagen
    • DB2INSTANCE especifica el nombre de instancia de Db2
    • DB2INST1_PASSWORD especifica la contraseña de la instancia de Db2
    • DBNAME crea una base de datos inicial con el nombre proporcionado (dejar vacío si no se necesita ninguna base de datos)
    • BLU establece BLU Acceleration para la instancia de Db2 en habilitado (true) o inhabilitado (false)
    • ENABLE_ORACLE_COMPATIBILITY establece la compatibilidad de Oracle en la instancia en habilitada (true) o inhabilitada (false)
    • UPDATEAVAIL se puede establecer en YES si hay una instancia existente que ejecuta un nuevo contenedor con un nivel de Db2 superior.
    • TO_CREATE_SAMPLEDB crea una base de datos de ejemplo (prepoblada) (true)
    • REPODB crea una base de datos de repositorio de Data Server Manager (true)
    • IS_OSXFS identifica el sistema operativo como macOS (true)
    • PERSISTENT_HOME se establece en true de forma predeterminada y sólo debe especificarse como false cuando se ejecuta Docker para Windows
    • HADR_ENABLED configura Db2 HADR para la instancia (true). Las tres variables de entorno siguientes dependen de que HADR_ENABLED se establezca en true:
      • ETCD_ENDPOINT especifica su propio almacén de claves-valor de ETCD proporcionado. Especifique los puntos finales con una coma (y sin espacios) como delimitador. Esta variable de entorno es necesaria si HADR_ENABLED está establecido en true
      • ETCD_USERNAME especifica la credencial de nombre de usuario para ETCD. Si se deja vacío, utilizará la instancia de Db2
      • ETCD_PASSWORD especifica la credencial de contraseña para ETCD. Si se deja vacío, utilizará la contraseña de la instancia de Db2
  7. Guarde el archivo pulsando ESCAPE (ESC) y entrando:
    :wq!
  8. Especifique y ejecute el mandato siguiente para entrar en el contenedor Docker:
    docker run -h db2server --name db2server --restart=always --detach --privileged=true 
    -p 50000:50000 --env-file .env_list -v /Docker:/database icr.io/db2_community/db2
    donde
    -h asigna el nombre db2server al contenedor Docker .
    -p especifica los números de puerto que se van a utilizar.
    --privileged inicia el contenedor en modalidad privilegiada.
    -v define el volumen utilizado para la imagen de Db2 Docker .
  9. Especifique el mandato siguiente para acceder a la instancia de Db2 en ejecución dentro del contenedor Docker :
    docker exec -ti db2server bash -c "su - db2inst1"
    donde db2inst1 es el valor asociado a la variable DB2INSTANCE en el archivo .env_list.
  10. Ahora puede crear una base de datos Db2 dentro de la instancia activa.