intersystems/iris-communityInterSystems IRIS 是一个基于云的全功能数据平台,在单一、云原生、易用的产品中提供 SQL 和 NoSQL 数据库管理、数据与应用集成以及结构化和非结构化数据分析能力。
运行以下命令拉取最新的 InterSystems IRIS 镜像,创建并启动容器:
bashdocker run --name my-iris -d --publish 1972:1972 --publish 52773:52773 intersystems/iris-community:latest-cd
通过以下命令启动交互式终端:
bashdocker exec -it my-iris iris session IRIS
或登录管理门户:http://localhost:52773/csp/sys/%25CSP.Portal.Home.zen。
默认用户名为_SYSTEM,密码为SYS;登录后系统会提示您更改此密码。
InterSystems IRIS 提供现代应用从概念到生产所需的全方位能力,帮助加速开发流程,包括:
InterSystems IRIS 采用单一架构从头构建,支持广泛的应用和场景。
为简洁起见,以下说明默认使用intersystems/iris-community:latest-cd,但您可以替换为以下仓库中的任何标签(也可在每个仓库页面的Tags下找到):
这些仓库提供的镜像有amd64和arm64版本。拉取amd64版本时,使用仓库名称和标签(如intersystems/iris-community:latest-cd);拉取arm64版本时,在仓库名称后添加**-arm64**(如intersystems/iris-community-arm64:latest-cd)。
InterSystems IRIS 社区版镜像也可从InterSystems容器仓库获取。
在使用本镜像前,请务必阅读InterSystems支持的容器部署平台。
docker run命令用于拉取镜像、创建容器并启动容器。以下命令将容器命名为my-iris并在后台运行(-d表示“分离模式”)。如果尚未拉取镜像,Docker会先拉取。
bashdocker run --name my-iris -d intersystems/iris-community:latest-cd
您可以使用docker ps -a命令检查系统上所有容器的状态。
注意:如果容器启动失败,错误消息提示系统核心数超过社区版许可限制,请先使用docker rm my-iris命令删除停止的容器,然后通过在上述docker run命令的**--name选项后插入--cpuset-cpus=0-19 --cpus=20**选项,限制新容器为20个核心(社区版限制)。
在my-iris中运行的InterSystems IRIS实例名为IRIS。使用docker exec在容器内执行iris terminal命令;-i(交互式)选项在分离的容器中保持标准输入打开,-t分配伪终端。
bashdocker exec -it my-iris iris session IRIS
该命令会向控制台输出一些信息并打开IRIS交互式终端,终端提示符为USER>。
bashNode: 8a6940088a16, Instance: IRIS USER>
在InterSystems终端中,您可以设置变量、调用方法和运行例程。更多信息,请查看使用InterSystems终端的视频指南。
textset test = "example string", write test
要退出InterSystems终端,输入halt。
bashUSER> halt
在某些情况下,您可能需要先在my-iris容器中打开交互式shell,然后在容器命令行上执行iris terminal命令。
bashdocker exec -it my-iris bash # iris terminal IRIS
发布超级服务器端口(1972)和Web服务器端口(52773)可让您从容器外部与InterSystems IRIS交互。
在docker run命令中添加**--publish**选项:
bashdocker run --name my-iris -d --publish 1972:1972 --publish 52773:52773 intersystems/iris-community:latest-cd
您不限于主机系统上的这些值;可以选择任何可用的主机端口来发布InterSystems IRIS端口:
bashdocker run --name my-iris -d --publish 9091:1972 --publish 9092:52773 intersystems/iris-community:latest-cd
现在,您可以在浏览器中加载实例的管理门户。URL包含容器主机的DNS名称或IP地址;如果不在该主机上浏览,请将localhost替换为其名称。端口是为实例Web服务器端口发布的主机端口。
texthttp://localhost:9092/csp/sys/UtilHome.csp
使用_SYSTEM登录,密码为SYS。登录后需要更改密码。
要连接IDE到实例,请使用容器主机的名称或IP、发布的超级服务器端口以及_SYSTEM登录名和您指定的新密码(或下一节中描述的具有新默认密码的其他预定义账户)。
为确保安装后能立即访问,InterSystems IRIS提供了多个预定义用户账户(包括_SYSTEM),每个账户的默认密码均为SYS。为保护实例,应尽快更改这些默认密码。
按前述方法停止并删除my-iris容器。在下次docker run命令中,您可以使用容器入口点应用iris-main程序的选项,将实例的默认密码更改为您挂载的外部存储上文件中的内容。
在主机文件系统上选择一个位置作为容器的外部存储挂载点,并在该位置放置一个名为password.txt的文件,其中包含要设置的默认密码;例如,您可以创建目录**/home/user1/password并将文件放在那里。执行docker run命令时,使用Docker的--volume选项将/home/user1/(确保使用绝对路径)作为存储卷挂载到容器中,并使用iris-main的--password-file选项指定密码文件位置。(iris-main的选项位于docker run**命令的末尾。)
bashdocker 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
默认密码更改后,指定的密码文件会被删除。打开实例的管理门户(见上文“发布端口启动InterSystems IRIS容器”)时,您可以使用预定义账户和密码文件中的密码登录,InterSystems IRIS不会强制您登录后更改密码。
在生产环境中,由于密码可能在密码文件中时被泄露,您应使用《在Docker容器中运行InterSystems产品》中的身份验证和密码部分描述的方法之一。
运行中的容器内保存的任何数据在容器被删除时都会丢失。持久化%SYS功能允许InterSystems IRIS实例将实例特定数据存储在容器外部的持久存储上,从而简化InterSystems IRIS容器的升级。
操作步骤如下:
bashadduser irisowner chown -R irisowner:irisowner /home/user1
注意:如果没有root权限,必须在这些命令前加上sudo。
bashdocker 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
然后,您可以通过两种方式检查持久化%SYS数据:在主机上列出**/home/user1目录,或在容器内打开交互式shell(见上文“打开容器命令行”)并列出/durable**目录。
注意:如果出于安全或其他原因,您希望避免在容器主机上进行用户账户和所有权更改,可以通过先运行一个带有bash入口点且挂载了该位置作为卷的临时容器,从容器内部更改该位置的所有权,退出shell,然后删除临时容器,为实例授予对所选文件系统位置的访问权限,例如:
bashdocker 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是用于定义和运行多容器Docker应用的工具,提供了Docker命令行交互的替代方案。要使用Compose,创建包含要创建和启动的容器规范的docker-compose.yml文件,然后使用docker-compose命令。以下是包含前述部分所涵盖的docker run选项的示例Docker Compose文件。
yamlversion: "2.2" services: iris: container_name: my-iris init: true image: intersystems/iris-community:latest-cd # 如果CPU核心数>20,请使用以下选项将InterSystems IRIS CE限制为20个核心 # cpuset: "0-19" # cpus: "20" volumes: - /home/user1:/durable # 将/home/user1更改为您的目录 environment: - ISC_DATA_DIRECTORY=/durable ports: - 52773:52773 - 1972:1972 command: --password-file /durable/password/password.txt

manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务