Datalore 2023.5 Help

Set up an air-gapped environment (no HTTP proxy available)

Normally, Datalore can't operate without downloading the JDBC drivers from some outside source. However, you can build your own SQL runtime image with pre-downloaded images.

Set up a fully air-gapped environment (no HTTP proxy available)

  • For JDBC drivers, apply one of the options available here.

  • Use the following syntax formats: {artifact name} or {artifact name}:{version}.

  • Specify the custom image in the datalore.values.yaml file as shown in the example below.

  • The DATABASES_COMMAND_IMAGE environment variable is overridden after the above-mentioned image is built.

Examples

Dockerfile

FROM jetbrains/datalore-database-command:2023.5 RUN ["/opt/datalore/download_artifacts.sh", "'MySQL Connector/J 8'"]

Datalore config files

docker-compose.yaml

services: datalore: image: jetbrains/datalore-server:2023.5 ports: - "8080:8080" expose: [ "8081", "5050", "4060" ] networks: - datalore-agents-network - datalore-backend-network volumes: - "datalore-storage:/opt/data" - "/var/run/docker.sock:/var/run/docker.sock" environment: #DATALORE_PUBLIC_URL: "https://datalore.example.com" DB_PASSWORD: "changeme" DATABASES_DOCKER_NETWORK: "datalore-agents-network" SQL_SESSION_DOCKER_NETWORK: "datalore-agents-network" DATABASES_COMMAND_IMAGE: "datalore-db-command-custom:latest"

datalore.values.yaml

dataloreEnv: DATABASES_COMMAND_IMAGE: "datalore-db-command-custom:latest" agentsConfig: .... databaseSecret: password: "password"

Known limitations

If the clients’ browser is also running in a fully air-gapped environment, the Visualization tab in a rendered DataFrame will not work due to this functionality reliance on the public CDN availability, which is not possible in an air-gapped environment.

Last modified: 02 October 2023