Skip to content

Docker-based console enabled for interacting with Senzing programs.

License

Notifications You must be signed in to change notification settings

senzing-garage/docker-senzing-console

Repository files navigation

docker-senzing-console

If you are beginning your journey with Senzing, please start with Senzing Quick Start guides.

You are in the Senzing Garage where projects are "tinkered" on. Although this GitHub repository may help you understand an approach to using Senzing, it's not considered to be "production ready" and is not considered to be part of the Senzing product. Heck, it may not even be appropriate for your application of Senzing!

Synopsis

The senzing/senzing-console docker image is used for creating a running Docker container configured to run Senzing programs.

Overview

The default behavior when running docker run is for the container to "sleep". This allows a user to "docker exec" into the container and run Senzing programs. Python commands located in /opt/senzing/g2/python can be run in the docker container.

Contents

  1. Legend
  2. Expectations
  3. Demonstrate using Docker
    1. Prerequisites for Docker
    2. MySQL support
    3. Run Docker container
  4. License
  5. References

Legend

  1. 🤔 - A "thinker" icon means that a little extra thinking may be required. Perhaps there are some choices to be made. Perhaps it's an optional step.
  2. ✏️ - A "pencil" icon means that the instructions may need modification before performing.
  3. ⚠️ - A "warning" icon means that something tricky is happening, so pay attention.

Expectations

  • Space: This repository and demonstration require 6 GB free disk space.
  • Time: Budget 40 minutes to get the demonstration up-and-running, depending on CPU and network speeds.
  • Background knowledge: This repository assumes a working knowledge of:

Demonstrate using Docker

Prerequisites for Docker

🤔 The following tasks need to be complete before proceeding. These are "one-time tasks" which may already have been completed.

  1. The following software programs need to be installed:
    1. docker

MySQL support

🤔 Optional: If a MySQL database will be accessed, the MySQL client needs to be installed at runtime.

  1. Construct parameter for docker run. Example:

    export SENZING_INSTALL_MYSQL_CLIENT_PARAMETER="--env INSTALL_MYSQL_CLIENT=y"

Run Docker container

Although the Docker run command looks complex, it accounts for all of the optional variations described above. Unset environment variables have no effect on the docker run command and may be removed or remain.

  1. Run Docker container.

    1. BASH example:

      sudo docker run \
        --cap-add=ALL \
        --interactive \
        --rm \
        --tty \
        ${SENZING_INSTALL_MYSQL_CLIENT_PARAMETER} \
        senzing/senzing-console
    2. ZSH example:

      ⚠️ if using the the z-shell (zsh) then you'll need to modify how you run the container.

      sudo docker run \
        --cap-add=ALL \
        --interactive \
        --rm \
        --tty \
        ${=SENZING_INSTALL_MYSQL_CLIENT_PARAMETER} \
        senzing/senzing-console

License

View license information for the software container in this Docker image. Note that this license does not permit further distribution.

This Docker image may also contain software from the Senzing GitHub community under the Apache License 2.0.

Further, as with all Docker images, this likely also contains other software which may be under other licenses (such as Bash, etc. from the base distribution, along with any direct or indirect dependencies of the primary software being contained).

As for any pre-built image usage, it is the image user's responsibility to ensure that any use of this image complies with any relevant licenses for all software contained within.

References