i2 Analyze Deployment Tooling

    Show / Hide Table of Contents

    Connector Designer

    A Connector Designer container is used to host the Connector Designer server that is used to create connectors from a user interface.

    Running a Connector Designer container

    The following docker run command runs a Connector Designer container:

      docker run -d \
        --name="connector_designer" \
        --net "eia" \
        --net-alias "connector_designer.eia" \
        -v "/home/<user-name>/analyze-deployment-tooling:/home/<user-name>/analyze-deployment-tooling" \
        -v "configs/<config-name>/configuration/connector_designer/data:/data" \
        -v "configs/<config-name>/configuration/connector_designer/custom-functions:/custom-functions" \
        -v "/environment-secrets/simulated-secret-store/connectordesigner:/run/secrets" \
        -e "ANALYZE_CONTAINERS_ROOT_DIR=/home/<user-name>/analyze-deployment-tooling" \
        -e "TTY=false" \
        -e CONFIG_NAME="<config-name>" \
        -v "/var/run/docker.sock:/var/run/docker-host.sock" \
        -e "USER_ID=$(id -u)" -e "GROUP_ID=$(id -g)" \
        -e I2ANALYZE_SERVER_URL="https://i2analyze.eia:9046" \
        -e CONNECTORS_CONFIG_URI="https://i2analyze.eia:9046/connector-designer" \
        -e CONTEXT_ROOT="opal" \
        -e JWT_ISSUER="https://i2analyze.eia:9046" \
        -e CONNECTORS_CONFIG_URI="https://i2analyze.eia:9046" \
        -e CONNECTOR_DESIGNER_CONTEXT_ROOT="connector-designer" \
        -e CONNECTORS_CONTEXT_ROOT="connectors" \
        -e ACCEPT_EULA="Y" \
        -e DOCKER_BUILDKIT=1 \
        -e SSL_ENABLED=true \
        -e SSL_CERTIFICATE_FILE="/run/secrets/server.cer" \
        -e SSL_PRIVATE_KEY_FILE="/run/secrets/server.key" \
        -e SSL_CA_CERTIFICATE_FILE="/run/secrets/CA.cer" \
        -e SSL_ADDITIONAL_TRUST_CERTIFICATES="/run/secrets/additional_trust_certificates.cer" \
        -e JWT_CERTIFICATE_FILE="/run/secrets/jwt_sign.cer" \
        "i2group/i2eng-connector-designer:1"
    

    Bind mounts

    A bind mount can be used to persist data and custom functions that is generated and used in the Connector Designer container. To configure the Connector Designer container to use these bind mounts, specify the -v option with the path to the directory that is mounted in the container.

    To enable Connector Designer to deploy connectors, the /var/run/docker.sock and analyze-deployment-tooling root directories must be mounted to the container.

    • Secrets: A directory that contains all of the secrets that this tool requires. Specifically, this includes credentials to access the database and certificates used in SSL. The directory is mounted to /run/secrets inside the container. This can then be used by other environment variables such as SSL_CA_CERTIFICATE_FILE to locate the secrets.

    The SSL_ADDITIONAL_TRUST_CERTIFICATES environment variable is used to specify the location of the additional trust certificates. The certificates are used to enable trust between the connectors created in Connector Designer and any secured resources the connector is connecting to. For example a REST endpoint that requires SSL.

    In a production environment, the orchestration environment can provide the secrets to the file system or the secrets can be passed in via environment variables. The mechanism that is used here simulates the orchestration system providing the secrets as files. This is achieved by using a bind mount. In production this would not be required.

    Environment variables

    Environment Variable Description
    ANALYZE_CONTAINERS_ROOT_DIR The root directory of analyze-deployment-tooling.
    TTY The terminal type.
    CONFIG_NAME The name of the configuration.
    I2ANALYZE_SERVER_URL The URL of the i2 Analyze server (internal to the docker network).
    CONNECTORS_CONFIG_URI The URL of the connectors configuration (internal to the docker network).
    ACCEPT_EULA Accept the End User License Agreement.
    CONTEXT_ROOT The context root of the application. Defaults to opal
    JWT_ISSUER The issuer of the JWT.
    CONNECTOR_DESIGNER_CONTEXT_ROOT The context root of the Connector Designer application.
    CONNECTORS_CONTEXT_ROOT The context root of the connectors created by connector designer.
    USER_ID The id of the current user.
    GROUP_ID The id of the current user's group.
    DOCKER_BUILDKIT Enable Docker BuildKit.
    JWT_CERTIFICATE_FILE The location of the JWT certificate file.

    The following environment variables enable you to use SSL:

    Environment variable Description
    SSL_ENABLED See Secure Environment variables.
    SSL_CERTIFICATE_FILE See Secure Environment variables.
    SSL_PRIVATE_KEY_FILE See Secure Environment variables.
    SSL_CA_CERTIFICATE_FILE See Secure Environment variables.
    SSL_ADDITIONAL_TRUST_CERTIFICATES See Secure Environment variables.
    Back to top © N. Harris Computer Corporation