Docker OS CPU Installation Recipe

These are the steps to installing OmniSci Enterprise edition using a Docker container.

Here is a quick video overview of the installation steps.

Open a new terminal window and enter the following command:

docker run -d -v $HOME/omnisci-docker-storage:/omnisci-storage -p 6273-6280:6273-6280 omnisci/core-os-cpu

When the installation is complete, Docker runs the OmniSci server and OmniSci web server automatically.

Command Line Access

You can access the command line in the Docker image to perform configuration and run OmniSci utilities.

You need to know the container-id to access the command line. Use the command below to list the running containers.

docker container ls

You see output similar to the following.

CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                            NAMES
9e01e520c30c        omnisci/omnisci-ee-cpu    "/bin/sh -c '/omnisci..."   3 days ago          Up 3 days           0.0.0.0:6273-6280->6273-6280/tcp                 confident_neumann

Once you have your container ID, you can access the command line using the Docker exec command. For example, here is the command to start a Bash session in the Docker instance listed above. The -it switch makes the session interactive.

docker exec -it 9e01e520c30c bash

Checkpoint

You can end the Bash session with the exit command.

Checkpoint

To verify that all systems are go, load some sample data and perform an omnisql query.

OmniSci ships with two sample datasets of airline flight information collected in 2008, and one dataset of New York City census information collected in 2015. To install the sample data, run the following command.

docker exec -it <container-id> ./insert_sample_data

Where <container-id> is the container in which OmniSci is running.

When prompted, choose whether to insert dataset 1 (7,000,000 rows), dataset 2 (10,000 rows), or dataset 3 (683,000 rows). The examples below use dataset 2.

Enter dataset number to download, or 'q' to quit:
#     Dataset                   Rows    Table Name             File Name
1)    Flights (2008)            7M      flights_2008_7M        flights_2008_7M.tar.gz
2)    Flights (2008)            10k     flights_2008_10k       flights_2008_10k.tar.gz
3)    NYC Tree Census (2015)    683k    nyc_trees_2015_683k    nyc_trees_2015_683k.tar.gz

Connect to OmniSciDB by entering the following command (default password is HyperInteractive):

docker exec -it <container-id> /omnisci/bin/omnisql
password: ••••••••••••••••

Enter a SQL query such as the following:

omnisql> SELECT origin_city AS "Origin", dest_city AS "Destination", AVG(airtime) AS
"Average Airtime" FROM flights_2008_10k WHERE distance < 175 GROUP BY origin_city,
dest_city;

The results should be similar to the results below.

Origin|Destination|Average Airtime
Austin|Houston|33.055556
Norfolk|Baltimore|36.071429
Ft. Myers|Orlando|28.666667
Orlando|Ft. Myers|32.583333
Houston|Austin|29.611111
Baltimore|Norfolk|31.714286