Ejecutar Jitterbit App Builder en Docker
Introducción
Esta página muestra cómo ejecutar App Builder como un Docker contenedor que utiliza [Jitterbit App BuilderImagen de Docker y un válido App Builder licencia.
El App Builder La imagen de Docker tiene soporte para estas bases de datos:
-
Ediciones Standard o Enterprise x64 de Microsoft SQL Server 2016 o posterior. Debe configurarse con secuencia de intercalación
SQL_Latin1_General_CP1_CI_AS
y autenticación de modo mixto. -
MySQL 8.0 o posterior.
-
PostgreSQL 14 o posterior.
Importante
Mientras que deberías correr an App Builder instancia y su base de datos por separado en los hosts que cumplen App Builder requisitos del sistema, para simplificar, estas instrucciones utilizan un alojar para ambos.
Antes de comenzar, debes tener un Docker Engine y Docker Compose instalado y tenga en cuenta las limitaciones. Para el docker run
ejemplo, se requiere una base de datos existente. El docker compose
y adicional Los ejemplos incluyen un servicio que se ejecuta an App Builder base de datos, por lo que no es necesario tener una existente.
Etiquetas compatibles
Las etiquetas de imagen de Docker muestra qué etiquetas están disponibles.
Las etiquetas están compuestas por App Builder número de versión con un número de compilación opcional (por ejemplo 4.0.{{ construir }}
). Etiquetas sin números de compilación (4.0
) son las compilaciones más recientes.
Para lograr estabilidad, debes usar etiquetas con números de compilación y fijar tu App Builder instancia para esa compilación. Para elegir una, consulte las notas de lanzamiento.
Comenzar an App Builder Instancia con docker run
Para empezar an App Builder instancia que se conecta a una base de datos existente que se ejecuta en el mismo alojar, siga estos pasos:
-
Crea un archivo
vinyl.env
que contiene las siguientes variables de ambiente, con valores sustituidos según la siguiente tabla:ConnectionInfo__DatabaseType=<DB TYPE> ConnectionInfo__HostName=<DB HOSTNAME> ConnectionInfo__DatabaseName=<DB NAME> ConnectionInfo__Port=<DB PORT> ConnectionInfo__UserName=<DB USERNAME> ConnectionInfo__Password=<DB PASSWORD>
Valor Reemplazar con <DB TYPE>
Uno de SQLServer
,MySQL
, oPostgreSql
.<DB HOSTNAME>
Nombre de host o dirección IP del servidor de base de datos. <DB PORT>
(Opcional) Número de puerto en el que se ejecuta el servicio de base de datos. Predeterminado: 1433
(SQL Server),3306
(MySQL),5432
(PostgreSQL).<DB NAME>
(Opcional) App Builder Nombre de la base de datos. Predeterminado: App Builder
. Esto puede ser cualquier cosa, pero debe seguir las reglas de nombre de la base de datos.<DB USERNAME>
App Builder nombre de usuario de la base de datos. <DB PASSWORD>
App Builder contraseña del usuario de la base de datos. (Estas y otras variables de ambiente se describen en Configuración App Builder al iniciar.)
Ejemplo para PostgreSQL:
ConnectionInfo__DatabaseType=PostgreSql ConnectionInfo__HostName=host.docker.internal ConnectionInfo__DatabaseName=vinyl ConnectionInfo__Port=5432 ConnectionInfo__UserName=postgres ConnectionInfo__Password=postgres
-
Iniciar el contenedor Docker:
docker run --publish "80:80" --env-file vinyl.env jitterbit/vinyl:3.3
-
Ingrese
http://localhost
en la barra de direcciones de su navegador y espere a que App Builder Página de inicio de sesión: -
(Opcional) Utilice su navegador,
curl
, o una herramienta de prueba de API web para hacer unaGET
Solicitud en el extremo de verificación de estado del contenedorhttp://localhost:80/ping
La respuesta debería serApp Builder - OK - YYYY-mm-DDTHH:MM:SSZ
, con la fecha y hora expresadas en formato ISO 8601 UTC. -
Inicie sesión con estas credenciales:
-
Nombre de usuario:
admin
-
Contraseña:
P@55w0rd
(El valor predeterminado App Builder contraseña del administrador.)
-
-
En la página Contraseña vencida, cambie la contraseña predeterminada y luego haga clic en Guardar contraseña:
-
En la página Contraseña cambiada, haga clic en Continuar.
-
En la página Licencia activa, haga clic en Cargar:
-
En la página Carga de licencia, haga clic en Explorar para abrir el explorador de archivos de su sistema. Busque y abra su App Builder archivo de licencia y luego haga clic en Guardar:
-
En la página Carga de licencia, haga clic en Activar:
-
En la página Licencia activa, haga clic en Iniciar:
-
El App Builder Se abre la página de bienvenida:
Comenzar an App Builder Instancia y base de datos con docker compose
El siguiente ejemplo utiliza Docker Compose para iniciar an App Builder instancia y una base de datos de Microsoft SQL Server (más ejemplos a continuación):
-
En un directorio vacío, crea un archivo
docker-compose.yml
que contiene lo siguiente:version: "3" services: db: image: mcr.microsoft.com/mssql/server hostname: vinyldb environment: MSSQL_SA_PASSWORD: P@55w0rd ACCEPT_EULA: Y volumes: - ./db_data:/var/opt/mssql/data vinyl: depends_on: - db image: jitterbit/vinyl:3.3 ports: - 80:80 volumes: - ./vinyl_data:/app/data - ./vinyl_logs:/app/logs - ./vinyl_keys:/app/keys environment: ConnectionInfo__DatabaseType: SQLServer ConnectionInfo__HostName: vinyldb ConnectionInfo__DatabaseName: App Builder ConnectionInfo__UserName: sa ConnectionInfo__Password: P@55w0rd volumes: db_data: vinyl_data: vinyl_logs: vinyl_keys:
-
Inicie los servicios:
docker compose up -d
-
Verifique los archivos de registro en
vinyl_logs
, montado en el App Builder directorio de registros/app/logs
. (Los otros montajes son/app/keys
donde se almacenan las claves de cifrado, y/app/data
, el directorio de datos.) -
Continúe siguiendo los pasos 3 a 12 de la sección anterior.
Limitaciones
Las siguientes limitaciones se aplican a: App Builder ejecutándose como un contenedor Docker y en cualquier instalación basada en Linux:
-
El soporte para las funciones de Windows varía según el App Builder Versión:
AplicaciónCompatible con
App Builder 3.3+Compatible con
App Builder 3.2IBM DB2 para i Plataforma Salesforce Autenticación de Active Directory Informes de Crystal Suplantación del sistema de archivos Autenticación integrada de Windows (IWA) SAP ABAP Complementos de terceros -
Las cargas de archivos están limitadas a 30 000 000 bytes (28,6 MB) de forma predeterminada. Esto sirve para protegerse contra ataques de denegación de servicio (DoS).
Para aumentar este límite, configure la variable de ambiente
Kestrel__Limits__MaxRequestBodySize
hasta el tamaño máximo de archivo deseado en bytes.
Adicional docker compose
ejemplos
Ejemplo docker-compose.yml
para App Builder Usando MySQL como base de datos backend:
version: '3.0'
services:
db:
image: mysql
hostname: vinyldb
environment:
MYSQL_ROOT_PASSWORD: P@55w0rd
volumes:
- db_data:/var/lib/mysql
vinyl:
depends_on:
- db
image: jitterbit/vinyl:3.3
ports:
- 80:80
volumes:
- ./vinyl_data:/app/data
- ./vinyl_logs:/app/log
- ./vinyl_keys:/app/keys
environment:
ConnectionInfo__DatabaseType: MySQL
ConnectionInfo__HostName: vinyldb
ConnectionInfo__UserName: root
ConnectionInfo__Password: P@55w0rd
volumes:
db_data:
vinyl_data:
vinyl_logs:
vinyl_keys:
Ejemplo docker-compose.yml
para App Builder Usando PostgreSQL como base de datos back-end:
version: "3"
services:
db:
image: postgres
hostname: vinyldb
environment:
POSTGRES_PASSWORD: postgres
volumes:
- db_data: /var/lib/postgresql/data
vinyl:
depends_on:
- db
image: jitterbit/vinyl:3.3
ports:
- 80:80
volumes:
- ./vinyl_data:/app/data
- ./vinyl_logs:/app/logs
- ./vinyl_keys:/app/keys
environment:
ConnectionInfo__DatabaseType: PostgreSql
ConnectionInfo__HostName: vinyldb
ConnectionInfo__UserName: postgres
ConnectionInfo__Password: postgres
volumes:
db_data:
vinyl_data:
vinyl_logs:
vinyl_keys: