Actian Blog / Announcing Actian Vector – Community Edition support for Mac OS X via Docker

Announcing Actian Vector – Community Edition support for Mac OS X via Docker

Home Hero X Hybrid

We’re pleased to announce that Actian Vector 5.0 Community Edition now includes support for Mac OS X via Docker. Over the last few years Mac OS X has become increasingly popular with Developers, as has Docker, the virtualization platform that allows you to bundle applications along with their native OS and run them in lightweight containers across a variety of platforms including OS X. Deploying Actian Vector on a Mac using Docker dramatically reduces setup time and complexity compared to prior versions that relied on Linux virtual machines.

Actian Vector Community Edition Mac OS X users will also benefit from the latest release of Actian Director, which now also includes Mac support via a native Mac installer. Actian Director is a desktop application that makes it easier for Actian Vector users to manage databases, tables, servers (and their components), administer security (users, groups, roles, and profiles), and create, store, and execute queries.

Getting started with Actian Vector and Docker for Mac OS X

To get started, first register and download the Actian Vector Community Edition.

Then create a work directory, and copy the .tgz file downloaded into that location.

Next, download the zip from the Actian Github repository, extract the Dockerfile and copy that to the work location. You should now have a work directory that looks something like this:

mymac:Docker hanje04$ pwd
/Users/hanje04/Projects/Docker
mymac:Docker hanje04$ ls
Dockerfile
actian-vector-5.0.0-412-community-linux-x86_64.tgz

If you haven’t already done so, download and install Docker and Kitematic (optional, but quite handy if you don’t want to just use Docker from the command line).

Open a Terminal window (Applications->Utilities->Terminal) and run the following command which will download a minimal Centos 7 machine image, then install Actian Vector into it:

mymac:Docker hanje04$ docker build -t actian/vector5.0:community .
Sending build context to Docker daemon  31.74kB
Step 1/17 : FROM centos:7

<loads and loads of output>

Successfully built 7cb12d07e583
Successfully tagged actian/vector5.0:community

If all goes well, a new image will be created:

mymac:Docker hanje04$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
actian/vector5.0    community           7cb12d07e583        29 seconds ago      1.92GB

Now we can launch a container from this image.

mymac:Docker hanje04$ docker run –name vector actian/vector5.0:community
Actian Vector (5.0.0)

Vector/ingstart

Checking host “localhost” for system resources required to run Vector…

A new container gets created, and Vector will be started. Running the container this way will show you the Vector startup details, and continue running in the foreground. To stop it, hit Ctrl-C and Vector and the container will shut down.

You can also launch the image in the background. We can use the –d flag to run it as a daemon:

mymac:Docker hanje04$ docker run –name vector -d actian/vector5.0:community ef050ac8643cdb8ed04f909c622b1c3b4c49fcc08e731e3c2bbc6e774f260752

mymac:Docker hanje04$ docker ps
CONTAINER ID        IMAGE                        COMMAND             CREATED             STATUS              PORTS                                        NAMES
ef050ac8643c        actian/vector5.0:community   “dockerctl”         20 hours ago        Up 20 hours         16902/tcp, 27832/tcp, 27839/tcp, 44223/tcp   vector

If you’ve already created an image, you will get an error if you issue a second “docker run” command using the same name. After the container has been initially created it can be stopped and restarted without losing the data:

mymac:Docker hanje04$ docker stop vector
vector
hanje04-osx:tmp hanje04$ docker start vector
vector

If you need to recreate the image, you need to stop and remove it first:

mymac:Docker hanje04$ docker stop vector
vector
hanje04-osx:tmp hanje04$ docker rm vector
vector

NOTE: This will completely destroy the image along with any data or databases.

Once we have a running container we can login and use the instance:

mymac:Docker hanje04$ docker exec -it vector bash
[root@1118133200b1 /]# createdb mydb
Creating database ‘mydb’ . . .

Creating DBMS System Catalogs . . .
Modifying DBMS System Catalogs . . .
Creating Standard Catalog Interface . . .
Creating Front-end System Catalogs . . .

Creation of database ‘mydb’ completed successfully.
[root@1118133200b1 /]# sql mydb
TERMINAL MONITOR Copyright 2016 Actian Corporation
Vector Linux Version VW 5.0.0 (a64.lnx/412) login
Thu Nov 16 12:18:15 2017
Enter g to execute commands, “help helpg” for general help,
“help tmg” for terminal monitor help, q to quit

continue
*

Getting started with Actian Director for Mac OS X

You may also want to connect to this instance from an external application, e.g. via Actian Director which has also recently been made available for OS/X. To do so you need to map the corresponding ports in the image to those on the host machine. For Director this would be 16902 and 44223.

hanje04-osx:Docker hanje04$ docker run –name vector -d -p 16902:16902 -p 44223:44223 actian/vector5.0:community
be6b51f7a2e7d1997b94e370c44d93d1a099761bee20cd2cceea0cb76c349e15
hanje04-osx:Docker hanje04$ docker port vector
44223/tcp -> 0.0.0.0:44223
16902/tcp -> 0.0.0.0:16902

For JDBC connections 27839 needs to be mapped, for ODBC or Net connections 27832.

NOTE: If you change these mapped ports after the container is started (e.g. via Kitematic), the container will be re-created from scratch, destroying any data you may have loaded into the database.

Before you can connect, a database password must be set in the container. To do this, connect to the container as before and run the following:

hanje04-osx:Docker hanje04$ docker exec -it vector bash
[root@be6b51f7a2e7 /]# sql iidbdb
TERMINAL MONITOR Copyright 2016 Actian Corporation
Vector Linux Version VW 5.0.0 (a64.lnx/412) login
Thu Nov 16 16:13:56 2017
Enter g to execute commands, “help helpg” for general help,
“help tmg” for terminal monitor help, q to quit

continue
* alter user actian with password=newdbpasswordg
Executing . . .

continue
*
Your SQL statement(s) have been committed.

Vector Version VW 5.0.0 (a64.lnx/412) logout

After installing and launching Actian Director, the Vector instance in Docker will appear locally to Director. Simply click on the “Connect to instance” button to connect. Enter “localhost” as the instance, “actian” as the Authenticated User, the password you just set and hit connect.

Experience the power of Vector analytics

Now that you are all set up, it’s time to experience the power of Vector Analytics. You can refer to the Actian Vector 5.0 user guide to get familiar with configuring and managing Vector, important concepts, usage scenarios, and developing applications.

Please check the Actian Vector forum and Knowledge Base if you get stuck or have any questions.

About Jeremy Hankinson

20 Year Actian veteran. Senior software engineer for Actian Vector with fingers in more pies than fingers. Technology enthusiast. Lapsed physicist. Embattled Father. Avid snow boarder. Englishman living in California.