首页 > 解决方案 > 如何将 docker 镜像从 USS 复制到 IBM zCX 服务器

问题描述

我正在尝试构建 z/OSMF 工作流程以将我的应用程序 docker 映像从 USS 复制到 zCX 服务器。有两种方法 -

  1. 将 docker 镜像推送到 zCX Private/Public docker Registry。
  2. 将 docker tar 复制到 ZCX 并使用 docker load 命令加载到 docker 存储库中

我既没有 zCX Docker Registry,也没有 linux 系统。我的 docker 图像在 USS 上以 tar 格式提供。zCX 中没有可用的 SFTP。

  1. 有什么方法可以在 zCX 中获取我的 docker 镜像?
  2. 是否有任何 z/OSMF 内置步骤来执行此活动?

我阅读了文档 - http://www.redbooks.ibm.com/redbooks/pdfs/sg248457.pdf。开始还不是很清楚。

标签: dockerinstallationwebsphereworkflowmainframe

解决方案


如果您已经设置了 zCX,并设置了默认用户 ID,那么您大概可以从 zOS 中的 USS env ssh 到 zCX env,而无需 pwd。

这意味着您可以像这样执行 cmd 将文件二进制传输到 zCX

ZCX@SC:/tmp>echo 'put /tmp/hw.txt' | sftp -P 8022 admin@cn02.ibm.com:/tmp

无法建立主机'[cn02.ibm.com]:8022([129.01.01.01]:8022)'的真实性。ECDSA 密钥指纹为 SHA256:CplCw7We+4b/gOK8ngj9XlY3p6uFNZXRabmvBqu6r3o。您确定要继续连接(是/否)?是 FOTS2274 警告:将 '[cn02.ibm.com]:8022,[129.01.01.01]:8022' (ECDSA) 永久添加到已知主机列表中。连接到 cn02.ibm.com。更改为: /tmp sftp> put /tmp/hw.txt 上传 /tmp/hw.txt 到 /tmp/hw.txt /tmp/hw.txt 100% 20 0.0KB/s 00:00

在 zCX 中,登录时:

admin@cn02:/tmp$ pwd /tmp admin@cn02:/tmp$ ls -lrt total 4 -rwxrwxr-x 1 admin admin 20 May 15 12:37 hw.txt admin@cn02:/tmp$ cat hw.txt ȅ ▒▒▒@▒▒▒▒@▒▒▒@z`]admin@cn02:/tmp$

由于SFTP默认进行二进制传输,因此USS中为EBCDIC的hw.txt文件的内容已经原样传输到zCX

由于 zCX 是 ASCII,当您在 zCX 中对 hw.txt 执行 cat 操作时,会得到不可读的输出,因为 ASCII 环境正在尝试输出 EBCDIC 数据

当您想将 tar 文件从 USS 传输到 zCX 时,您不希望发生 EBCDIC 到 ASCII 转换,您希望 sftp 进行 asis (binary transfer),这是默认设置


推荐阅读