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!
A docker wrapper around the yum
command.
This repository creates a Docker wrapper over the yum
command.
It can be used to download and extract RPMs.
The default behavior is to install the latest senzingapi
packages.
- 🤔 - 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.
- ✏️ - A "pencil" icon means that the instructions may need modification before performing.
⚠️ - A "warning" icon means that something tricky is happening, so pay attention.
- Space: This repository and demonstration require 6 GB free disk space.
- Time: Budget 10 minutes to get the demonstration up-and-running, depending on CPU and network speeds.
- Background knowledge: This repository assumes a working knowledge of:
To use the Senzing code, you must agree to the End User License Agreement (EULA).
-
⚠️ This step is intentionally tricky and not simply copy/paste. This ensures that you make a conscious effort to accept the EULA. Example:export SENZING_ACCEPT_EULA="<the value from this link>"
-
Construct parameter for
docker run
. Example:export SENZING_ACCEPT_EULA_PARAMETER="--env SENZING_ACCEPT_EULA=${SENZING_ACCEPT_EULA}"
Senzing follows the Linux File Hierarchy Standard.
The Senzing RPM installs 2 packages: senzingapi
, senzingdata
.
senzingapi
is installed into /opt/senzing/g2
and senzingdata
is installed into /opt/senzing/data
inside the Docker container.
Environment variables will be used in --volume
options to externalize the installations.
-
✏️ Specify the directory where to install Senzing. Example:
export SENZING_VOLUME=/opt/my-senzing
⚠️ macOS - File sharing must be enabled forSENZING_VOLUME
.⚠️ Windows - File sharing must be enabled forSENZING_VOLUME
.
-
Identify directories for
data
andg2
. Example:export SENZING_DATA_DIR=${SENZING_VOLUME}/data export SENZING_G2_DIR=${SENZING_VOLUME}/g2
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.
-
Run Docker container. Example:
sudo docker run \ --rm \ --volume ${SENZING_DATA_DIR}:/opt/senzing/data \ --volume ${SENZING_G2_DIR}:/opt/senzing/g2 \ ${SENZING_ACCEPT_EULA_PARAMETER} \ senzing/yum
-
When complete, Senzing is installed in the
SENZING_G2_DIR
andSENZING_DATA_DIR
directories. -
For more examples of use, see Examples of Docker.
The following examples require initialization described in Demonstrate using Docker.
By not setting SENZING_ACCEPT_EULA_PARAMETER
, the containerized yum
install will prompt for manual EULA acceptance.
-
Run Docker container. Example:
sudo docker run \ --interactive \ --rm \ --tty \ --volume ${SENZING_DATA_DIR}:/opt/senzing/data \ --volume ${SENZING_G2_DIR}:/opt/senzing/g2 \ senzing/yum
senzing/yum
can be used to install local RPM files.
-
To download Senzing RPM files, see github.com/Senzing/docker-yumdownloader.
-
✏️ Set additional environment variables. Identify directory containing RPM files and the exact names of RPM files. Example:
export SENZING_RPM_DIR=~/Downloads export SENZING_API_RPM_FILENAME=senzingapi-nn.nn.nn.x86_64.rpm export SENZING_DATA_RPM_FILENAME=senzingdata-v1-nn.nn.nn.x86_64.rpm
-
Run the Docker container. Example:
sudo docker run \ --rm \ --volume ${SENZING_DATA_DIR}:/opt/senzing/data \ --volume ${SENZING_G2_DIR}:/opt/senzing/g2 \ --volume ${SENZING_RPM_DIR}:/data \ ${SENZING_ACCEPT_EULA_PARAMETER} \ senzing/yum -y localinstall \ /data/${SENZING_DATA_RPM_FILENAME} \ /data/${SENZING_API_RPM_FILENAME}
Configuration values specified by environment variable or command line parameter.
- Development
- Errors
- Examples
- Related artifacts:
- Verify container