您可以使用 Db2 Community Edition 来快速开发、测试和构建应用程序,以配合企业的运营和分析工作负载。
关于本任务
使用此过程在 64 位版本的 Windows 10 Pro , Windows 10 Enterprise 或 Windows 10 Education 上安装
Db2 Community Edition 的 Docker 映像。 此过程假定您已使用
在 Windows 上安装 Docker 桌面中概述的步骤在 Windows 系统上安装了 Docker 桌面。
注意: Db2 Community Edition for Docker 仅用于非生产用途。
Db2 Community Edition Docker 映像具有以下预先设置的限制:
过程
- 在 Windows 资源管理器中,浏览至用户目录并为 Docker 安装创建文件夹。
例如,C:\Users\<user name>\Docker。
- 在新创建的 Docker 目录中,创建名为 env_list.txt的文本文件。 在设置 Db2 实例时,Docker run 命令会引用此文件。
注: Docker 将配置文件
config.json用于凭证的未加密存储。 因此,在输入用户名和密码之前,您可能会收到消息
WARNING: Error loading config file....,后跟 config.json 文件的预期缺省位置。
此消息不会阻止您输入凭证和访问 Docker 环境。 在您登录后,Docker 会在缺省位置创建 config.json 文件,并将您的凭证存储在该文件中。 请参阅 docker login 以获取有关创建 Docker 凭证的安全存储的信息。
- 在 Windows 系统上运行 Docker 时,打开命令提示符并输入以下 Docker 命令以从 ICR 中拉取 Db2 Community Edition Docker 映像:
docker pull icr.io/db2_community/db2
- 在 Windows 资源管理器中,返回到 Docker 文件夹,打开 env_list.txt 文件并粘贴以下内容:
LICENSE=accept
DB2INSTANCE=db2inst1
DB2INST1_PASSWORD=password
DBNAME=testdb
BLU=false
ENABLE_ORACLE_COMPATIBILITY=false
UPDATEAVAIL=NO
TO_CREATE_SAMPLEDB=true
REPODB=true
IS_OSXFS=false
PERSISTENT_HOME=false
HADR_ENABLED=false
ETCD_ENDPOINT=
ETCD_USERNAME=
ETCD_PASSWORD=
其中
- LICENSE (必填字段) 接受此映像中包含的 Db2 Community Edition 软件的条款和条件
- DB2INSTANCE (必填字段) 指定 Db2 Community Edition 实例名称
- DB2INST1_PASSWORD (必填字段) 指定 Db2 Community Edition 实例的密码
- DBNAME 使用提供的名称创建初始数据库(如果不需要数据库,请保留为空)
- BLU 将 Db2 Community Edition 实例的 BLU Acceleration 设置为已启用 (true) 或已禁用 (false)
- ENABLE_ORACLE_COMPATIBILITY 将该实例的 Oracle 兼容性设置为启用 (true) 或禁用 (false)
- 如果存在运行具有更高 Db2 级别的新容器的现有实例,那么可以将 UPDATEAVAIL 设置为 YES 。
- TO_CREATE_SAMPLEDB 创建样本(预填充)数据库 (true)
- REPODB 创建 Data Server Manager 存储库数据库 (true)
- IS_OSXFS 将操作系统标识为 macOS (false)
- PERSISTENT_HOME 对主目录禁用持久存储器(用于 Linux 和 macOS 安装)(false)
- HADR_ENABLED 为实例配置 Db2 HADR (true)。 以下三个环境变量依赖于 HADR_ENABLED 设置为 true:
- ETCD_ENDPOINT 指定您自己提供的 ETCD 键值存储。 输入端点,以逗号(并且没有空格)作为分隔符。 如果 HADR_ENABLED 设置为 true,那么需要此环境变量
- ETCD_USERNAME 指定 ETCD 的用户名凭证。 如果保留为空,那么它将使用 Db2 Community Edition 实例
- ETCD_PASSWORD 指定 ETCD 的密码凭证。 如果留空,那么它将使用 Db2 Community Edition 实例密码
- 保存该文件。
- 打开命令提示符并运行以下 Docker 命令以创建 Db2 Community Edition 实例:
docker run -h db2server --name db2server --restart=always --detach --privileged=true -p 50000:50000 --env-file env_list.txt -v C:/Users/<user name>/Docker:/database icr.io/db2_community/db2
其中
-h 将名称 db2server 分配给 Docker 容器。
-p 指定要使用的端口号。
--privileged 以特权方式启动容器。
-v 定义用于 Db2 Community Edition Docker 映像的卷。
执行 docker run 命令后,容器将需要几分钟时间才能完成设置。 请记下容器标识,因为您需要将其包含在 Docker 日志命令中。
- 运行 Docker 日志命令以跟踪 Docker 入口点脚本:
docker logs -f <your_container_name>
如果设置成功,那么日志将显示消息
安装已完成。
- 输入以下命令以访问 Docker 容器中正在运行的 Db2 Community Edition 实例:
docker exec -ti db2server bash -c "su db2inst1"
其中
db2inst1 是与
env_list.txt 文件中的
DB2INSTANCE 变量相关联的值。
- 现在,您可以访问在 env_list.txt 文件 (testdb) 中定义的 Db2 数据库,或者访问 SAMPLE 和 repodb 数据库 (如果在 env_list.txt 文件中选择了这些选项)