What is IBM Informix Innovator-C ?
IBM Informix Innovator-C eliminates the up-front licensing costs of developing popular database functionality for use in production (redistribution requires a separate license). The Innovator-C Edition is available on Linux, Windows and Mac platforms and is limited to one core and 2 GB of memory.
Informix Innovator-C Edition delivers the following features and benefits:
- Autonomic features minimize system failures and improve performance..
- Automated backup and restore eliminates many manual tasks.
- Selected support at Elite level is available as an optional purchase.
The supported tags stands for
<informix version> - <Linux kernel version of Docker Engine>.
Informix Docker images can be deployed on a Docker Engine with any flavour of Linux , as long as it has the compatible Linux
- Please make sure your Docker Engine has a compatible Linux kernel
- Please use
Docker 1.6.0 or later releaseon Ubuntu Docker Engine or Boot2Docker since there is a known issue with [aufs and direct io] (https://github.com/docker/docker/pull/10534)
How to use this image ?
This docker image has to be deployed to Docker Engine on one of supported Cloud providers or your own system. The instructions for creating Docker Engine vary by Cloud provider. We recommend to use [Docker Machine (beta)] (https://docs.docker.com/machine/) to provision Docker Engine.
In order to use the image, it is necessary to accept the terms of the Informix Innovator-C license. This is achieved by specifying the environment variable LICENSE equal to accept when running the image.
This docker image contained pre-deployed Informix Innovator-C.
1 - Starting an Informix Docker Container for the First time.
docker run -it --name iif_innovator_c --privileged -p 9088:9088 -p 9089:9089 -p 27017:27017 -p 27018:27018 \ -p 27883:27883 -e LICENSE=accept ibmcom/informix-innovator-c:latest
-p, expose port
9088to allow remote connections from TCP clients
-p, expose port
9089to allow remote connections from DRDA clients
-p, expose port
27017to allow remote connections from mongo clients
-p, expose port
27018to allow remote connections from REST clients
-p, expose port
27883to allow remote connections from MQTT clients
--privileged, allows Informix Server in Docker Engine to manage kernel configuration
- The default password for user
-e LICENSE=acceptparameter, you are accepting this License to use the software contained in this image.
docker runcommand will perform a disk initialization for the Informix Database Server. When you exit this shell the server will be
After disk initialization of the Informix server you should start and stop the server with
2 - Start the Informix Docker container
The docker run command will perform a disk initialization for the Datbase server. After performing that for the first time you should start the database server with the following command.
docker start iif_innovator_c
3 - Stop the Informix Docker container
The docker run command will perform a disk initialization for the Database server. After performing that for the first time you should start the database server with the following command.
docker stop iif_innovator_c
4 - To attach to the Informix Docker container (shell)
docker exec -it iif_innovator_c bash
5 - The following command will create a demo database
6 - Need to know
Informix is deployed in the Docker Engine in:
Informix database server name is set to
View License Information for the software contained in this image.
Supported Docker versions
- This image is officially supported on Docker version 1.6.0 or later is required for Docker hosts running Ubuntu or Boot2Docker
- Support for older versions (down to 1.0) is provided on a best-effort basis.
- Zhong Yu (Leo) Wu - (email@example.com)
- Darin Tracy - (firstname.lastname@example.org)
- Emerging Technology Team ( email@example.com ), IBM Analytics Platform
It will run with -td or with -it. We use -it because if the docker is stopped to soon on first initialization some of the system databases may not get created etc. But either way is fine. And after first initialization you can bring the container up/down with the normal start/stop commands
Why was this docker container created to require -it on the initial run command? Is there something missing from the steps that show how to run without -it and with -d?
is there a max connections limitation for Informix Innovator-C?
This image is an excellent effort and a big help to developers using Informix and it seems to be relatively mature and stable. What is the reasoning for the lack of versioning?
The TCP port 9088 is exposed via the -p option. So an example JDBC url would look like:
String url = "jdbc:informix-sqli://<ip address>:9088:INFORMIXSERVER=dev;user=informix;password=in4mix",
Can someone please provide details on how to interact with this Docker container using the Informix JDBC driver?
Specially, what should the connection URL look like, and what username / password can one use to connect?
There warnings you are getting from dbaccessdemo can be ignored. By default dbaccessdemo will create timeseries data. The errors you are seeing are related to not being able to create the timeseries data. There is an option -nots that can be used and you won't see that error. Or you can configure the Informix server to handle the timeseries data.
- You will need more logical log space.
- dbaccessdemo attempts to create containers in rootdbs. In older versions of the docker image the root dbspace name is dbs_root.
- The latest version of the image has changed the name of the root dbspace to the default rootdbs. So the containers will get created properly. You merely need to add the log space to account for the loading of the timeseries data.
There are a couple of errors in the Full Description:
- The path to
- The database is deployed to
dbaccessdemo prints some error on the output, but that doesn't fail the script. Are these errors harmless?
937: User Defined Routine error. (UTSD1) - Unknown container: mult_container. 847: Error in load file row 1. Error in line 2 Near character position 26 691: Missing key in referenced table for referential constraint (informix.r137_183). 111: ISAM error: no record found. 847: Error in load file row 1. Error in line 2 Near character position 35