Cloud-based data platform for SQL and NoSQL DBMS, with embedded integration and analytics tools.
100K+
InterSystems IRIS is a cloud-based, full-featured data platform providing SQL and NoSQL database management, data and application integration, and structured and unstructured data analytics capabilities in a single, cloud-based, easy-to-use product.
Run the following command to pull the latest InterSystems IRIS image, create a container from it, and start it:
docker run --name my-iris -d --publish 1972:1972 --publish 52773:52773 intersystems/iris-community:latest-cd
Start an interactive terminal with the following:
docker exec -it my-iris iris session IRIS
Or login to the Mangement Portal at http://localhost:52773/csp/sys/%25CSP.Portal.Home.zen.
The default username is _SYSTEM and password is SYS; you will be prompted to change this password after logging in.
InterSystems IRIS provides the full range of capabilities needed for modern applications to make the journey from whiteboard to production faster and easier, including:
InterSystems IRIS is built from the ground up with a single architecture to support a wide range of applications and scenarios.
For simplicity, these instructions use intersystems/iris-community:latest-cd as a default, but you can substitute with any tag from the following repositories (also found under Tags at the top of each repository's page):
The images provided in these repositories are available in both amd64 and arm64 versions. To pull the former, use the repository name and a tag (e.g. intersystems/iris-community:latest-cd). For the latter, append -arm64 to the repository name (e.g. intersystems/iris-community-arm64:latest-cd).
InterSystems IRIS Community Edition images are also available from the InterSystems Container Registry.
Before using one of these images with the instructions here or the listed documentation, be sure to read Container Deployment Platforms Supported by InterSystems.
The docker run command pulls an image and creates a container from it, then starts the container. The following command names the container my-iris and runs it in the background (-d for "detach"). If you have not already pulled (downloaded) the image, Docker does that first.
docker run --name my-iris -d intersystems/iris-community:latest-cd
You can always check the status of all containers on your system using the docker ps -a command.
Note: If the container fails to start, with an error message indicating that your system has too many cores for the Community Edition license, first remove the stopped container with the command docker rm my-iris, then restrict a new container to 20 cores, the Community Edition limit, by inserting the options --cpuset-cpus=0-19 --cpus=20 after the --name option in the above docker run command.
The InterSystems IRIS instance running in my-iris is named IRIS. Execute the iris terminal command inside the container using docker exec; the -i (interactive) option keeps standard input open in a detached container, and -t allocates a pseudo-terminal.
docker exec -it my-iris iris session IRIS
This command prints some info to the console and opens the IRIS interactive terminal, denoted by the USER> cursor.
Node: 8a6940088a16, Instance: IRIS
USER>
From the InterSystems Terminal, you can set variables, call methods, and run routines. For more information, check out our video guide to Using the InterSystems Terminal.
set test = "example string", write test
To exit the InterSystems Terminal, enter halt.
USER> halt
Under some circumstances, you may want to first open an interactive shell in the my-iris container and then execute the iris terminal command on the container command line.
docker exec -it my-iris bash
# iris terminal IRIS
Publishing the superserver port (1972) and web server port (52773) lets you interact with InterSystems IRIS from outside the container.
Add --publish options to the last docker run command:
docker run --name my-iris -d --publish 1972:1972 --publish 52773:52773 intersystems/iris-community:latest-cd
You are not limited to these values on the host system; you can choose any available host ports to publish the InterSystems IRIS ports:
docker run --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystems/iris-community:latest-cd
You can now load the instance's Management Portal in your browser. The URL includes the DNS name or IP address of the container host; if you are not browsing on that host, substitute its name for localhost. The port is the host port published for the instance's webserver port.
http://localhost:9092/csp/sys/UtilHome.csp
Use the _SYSTEM login with the password SYS. You are required to change the password after logging in.
To connect an IDE to the instance, use the container host's name or IP, the published superserver webserver port, and the _SYSTEM login with the new password you specified (or another predefined account with the new default password, as described in the next section).
To ensure that you have immediate access after installation, InterSystems IRIS comes with several predefined user accounts (including _SYSTEM), each of which has the default password SYS. To secure your instance, you should change these default passwords as soon as possible.
Stop and remove the my-iris container as before. In your next docker run command, you can use an option to the iris-main program, the container's entrypoint application, to change the instance's default password to the contents of a file you have placed on external storage you have mounted.
Choose a location on your host file system to mount as external storage for the container, and place a file called password.txt, containing the default password you want to set, in that location; for example, you can create the directory /home/user1/password and locate it there. When you issue the docker run command, bind mount /home/user1 (be sure to use an absolute path) as a storage volume in the container using the Docker --volume option and indicate where the password file is using the iris-main --password-file option. (Options to iris-main come at the end of the docker run command.)
docker run --name my-iris -d --publish 1972:1972 --publish 52773:52773 --volume /home/user1/:/durable intersystems/iris-community:latest-cd --password-file /durable/password/password.txt
After the default password is changed, the password file you specified s removed. When you open the instance's Management Portal (see Start an InterSystems IRIS container with published ports above), you can log in using the password it contained with one of the predefined accounts, and InterSystems IRIS does not force you to change the password after you log in.
In production, because the password might be exposed while it is in the password file, you should use one of the methods described in Authentication and Passwords in Running InterSystems Products in Docker Containers.
Any data saved inside a running container is lost when the container is removed. The durable %SYS feature lets the InterSystems IRIS instance store instance-specific data on persistent storage outside the container, which makes upgrading an InterSystems IRIS container simple and easy.
To do this, use the following steps:
adduser irisowner
chown -R irisowner:irisowner /home/user1
Note: If you do not have root privileges, you must prefix these commands with sudo.
docker run --name my-iris -d --publish 1972:1972 --publish 52773:52773 --volume /home/user1:/durable --env ISC_DATA_DIRECTORY=/durable/iris intersystems/iris-community:latest-cd
You can then examine the durable %SYS data in two ways: on the host, by listing the directory /home/user1, or inside the container, by opening an interactive shell (as described in Open the container command line, above) and listing the directory /durable.
Note: If for security or other reasons you want to avoid making user account and ownership changes on the container host, you can give the instance access to your chosen file system location by first running a temporary container with a bash entrypoint and the location mounted as a volume, changing ownership of the location from inside the container, exiting the shell, and removing the temporary container, for example:
docker run --name tmp-iris -it --user root --entrypoint bash --volume /home/user1/:/tmp
intersystems/iris-community:latest-cd
# chown -R irisowner:irisowner /tmp
# exit
docker rm tmp-iris
Docker Compose, a tool for defining and running multi-container Docker applications, offers an alternative to command-line interaction with Docker. To use Compose, create a docker-compose.yml file containing specifications for the containers you want to create and start, then use the docker-compose command. A sample Docker Compose file incorporating the docker run options covered in the preceding sections is below.
version: "2.2"
services:
iris:
container_name: my-iris
init: true
image: intersystems/iris-community:latest-cd
# If your CPU has >20 cores, limit InterSystems IRIS CE to 20 with
# cpuset: "0-19"
# cpus: "20"
volumes:
- /home/user1:/durable
# Change /home/user1 to your directory
environment:
- ISC_DATA_DIRECTORY=/durable
ports:
- 52773:52773
- 1972:1972
command: --password-file /durable/password/password.txt
Content type
Image
Digest
sha256:cd2ebcab0…
Size
946 MB
Last updated
2 months ago
docker pull intersystems/iris-community:latest-cd