DB2 开发人员社区版挂在“正在启动 docker 容器...”

DB2 开发人员社区版挂在“正在启动 docker 容器...”

DB2 开发人员社区版挂在“正在启动 docker 容器...”

Ubuntu 16.04 LTS x64,裸机,Xeon E5-2660 CPU。128GB RAM。

Docker 版本 17.06.2-ce,内部版本 cec0b72

使用:ibm-db2-developer_community_edition-1.1.2-x86_64.AppImage

症状可重现。

安装在“启动 docker 容器...”步骤处挂起在 79%,并且永远无法完成。

docker ps -a此期间的输出:

CONTAINER ID        IMAGE                    COMMAND                  CREATED             STATUS              PORTS                          NAMES f2ed37f629cc        db2server:v11.1.2fp2_2   "/var/db2_setup/li..."   33 minutes ago      Up 33 minutes       22/tcp, 0.0.0.0:50000->50000/tcp   db2server

看起来程序尝试启动 2 个容器(db2server* 和 dsm*),第二个容器依赖于第一个容器,但第二个容器却启动了,因为它抱怨第一个容器不存在?是时间问题吗?也许我误解了下面的日志文件。

从日志文件末尾( /home/tang/.config/ibm-db2-developerc/Logs/db2-developerc.log ):

剪斷……

[2017-09-07 12:19:09:0627] [info] Db2server command to execute is:
[2017-09-07 12:19:09:0627] [info] docker run -h db2server_e247e0 --name db2server --restart=always --privileged=true -p 50000:50000 -e DB2INST1_PASSWORD=**** -e LICENSE=accept -e BLU=false -e ENABLE_ORACLE_COMPATIBILITY=false -e TO_CREATE_SAMPLEDB=true -e UPDATEAVAIL=NO -v "/home/tang/.config/ibm-db2-developerc/DB2/db2fs:/db2fs" db2server:v11.1.2fp2_2
[2017-09-07 12:19:09:0627] [info] inside runImage command: docker run -h db2server_e247e0 --name db2server --restart=always --privileged=true -p 50000:50000 -e DB2INST1_PASSWORD=**** -e LICENSE=accept -e BLU=false -e ENABLE_ORACLE_COMPATIBILITY=false -e TO_CREATE_SAMPLEDB=true -e UPDATEAVAIL=NO -v "/home/tang/.config/ibm-db2-developerc/DB2/db2fs:/db2fs" db2server:v11.1.2fp2_2


[2017-09-07 12:19:14:0444] [info] Starting DSM...
[2017-09-07 12:19:14:0444] [info] dsm:v2.1.4_2
[2017-09-07 12:19:14:0444] [info] runDockerImage: DOMAIN_INFO -> we.cumulusrepo.com/db2dg
[2017-09-07 12:19:14:0445] [info] image: dsm:v2.1.4_2,  containerName: dsm
[2017-09-07 12:19:14:0445] [info] before calling runContainer: dsm:v2.1.4_2, dsm
[2017-09-07 12:19:14:0460] [info] runDatastudioImage - the datastudioName is equal to undefined
[2017-09-07 12:19:14:0480] [info] command: docker ps --filter "status=running" error: null stdout: CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
 stderr:
[2017-09-07 12:19:14:0511] [info] command: docker ps --filter "status=exited" error: null stdout: CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
 stderr:
[2017-09-07 12:19:14:0544] [info] command: docker ps --filter "status=created" error: null stdout: CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
 stderr:
[2017-09-07 12:19:14:0544] [info] Getting DSM command to run for dsm:v2.1.4_2 and dsm
[2017-09-07 12:19:14:0544] [info] Inside getDsmCommand ...
[2017-09-07 12:19:14:0618] [info] Generated DSM command is:
[2017-09-07 12:19:14:0618] [info] docker run -h dsm_c61b67 --name dsm --restart=always -p 11080:11080 -p 11081:11081 -p 11082:11082 -e DSM_ADMIN=dsmadmin -e DSM_ADMIN_PWD=**** -e DB2INST1_PASSWORD=**** -e TO_CREATE_SAMPLEDB=true --volumes-from db2server dsm:v2.1.4_2
[2017-09-07 12:19:14:0619] [info] inside runImage command: docker run -h dsm_c61b67 --name dsm --restart=always -p 11080:11080 -p 11081:11081 -p 11082:11082 -e DSM_ADMIN=dsmadmin -e DSM_ADMIN_PWD=**** -e DB2INST1_PASSWORD=**** -e TO_CREATE_SAMPLEDB=true --volumes-from db2server dsm:v2.1.4_2

[2017-09-07 12:19:31:0653] [info] command: docker run -h dsm_c61b67 --name dsm --restart=always -p 11080:11080 -p 11081:11081 -p 11082:11082 -e DSM_ADMIN=dsmadmin -e DSM_ADMIN_PWD=dsmadmin+10 -e DB2INST1_PASSWORD=f1nalM0nth -e TO_CREATE_SAMPLEDB=true --volumes-from db2server dsm:v2.1.4_2 error: "

{ Error: Command failed: docker run -h dsm_c61b67 --name dsm --restart=always -p 11080:11080 -p 11081:11081 -p 11082:11082 -e DSM_ADMIN=dsmadmin -e DSM_ADMIN_PWD=dsmadmin+10 -e DB2INST1_PASSWORD=f1nalM0nth -e TO_CREATE_SAMPLEDB=true --volumes-from db2server dsm:v2.1.4_2\n
docker: Error response from daemon: No such container: db2server.\nSee 'docker run --help'.\n\n    at ChildProcess.exithandler (child_process.js:217:12)\n    at emitTwo (events.js:106:13)\n    at ChildProcess.emit (events.js:194:7)\n    at maybeClose (internal/child_process.js:899:16)\n    at Socket.<anonymous> (internal/child_process.js:342:11)\n    at emitOne (events.js:96:13)\n    at Socket.emit (events.js:191:7)\n    at Pipe._handle.close [as _onclose] (net.js:510:12)\n  killed: false,\n  code: 125,\n  signal: null,\n  cmd: 'docker run -h dsm_c61b67 --name dsm --restart=always -p 11080:11080 -p 11081:11081 -p 11082:11082 -e DSM_ADMIN=dsmadmin -e DSM_ADMIN_PWD=dsmadmin+10 -e DB2INST1_PASSWORD=f1nalM0nth -e TO_CREATE_SAMPLEDB=true --volumes-from db2server dsm:v2.1.4_2' }" 

stdout:  stderr: docker: Error response from daemon: No such container: db2server.
See 'docker run --help'.

答案1

同样的问题,但是是 Mac 版本。

Docker 版本 17.10.0-ce,内部版本 f4ffd25

对于 Mac,它挂在“准备下载”上,显示 0%。它下载了六个文件:

datastudio.tar datastudio.tar.gz db2server.tar db2server.tar.gz dsm.tar dsm.tar.gz

我猜是他们的电子安装程序出了问题,所以它不会更新这些百分比,只是挂起而不告诉你原因。

如果 Ubuntu 的工作方式与 Mac 类似,请查看下载文件夹并查看是否有这些文件夹。然后您可以使用docker import dsm.tar等来运行它们。

我不确定如何从那里结束。我不知道安装程序之后会做什么,但相关帖子有以下内容:

https://stackoverflow.com/questions/46062423/blank-screen-installing-db2-developer-community-edition-on-linux

a6897b6ff68f        dsm:v2.1.4_2             "/opt/start_dsm.sh"      16 hours ago        Up About an hour    0.0.0.0:11080-11082->11080-11082/tcp   dsm
3085e6a8bb4b        db2server:v11.1.2fp2_2   "/var/db2_setup/lib/e"   16 hours ago        Up About an hour    22/tcp, 0.0.0.0:50000->50000/tcp       db2server

您也许可以使用它并调试应用程序中发生的情况。

相关内容