内容简介:生成DOCKER图片镜像
使用命令行脚本生成Predix机器作为 Docker 图片镜像
• 从 https://artifactory.predix.io/artifactory/PREDIX-EXT/predix-machine-package/predixmachinesdk/17.1.0/predixmachinesdk-17.1.0.zip 下载Predix机器。
提示:
如为Windows系统,应将下载的SDK放到计算机的一个高级目录内。例如,不要放在c:\\\\Predix Machine SDK这样的目录内。应使用c:\PredixMachineSDK这样的目录。如果嵌套了多个目录中的下载,当尝试运行容器时路径可能会过长。
• 下载带有PDE运行时插件的Eclipse;例如用于Java EE开发人员的Eclipse IDE。下载的文件应保留.zip或tar.gz格式。
• 确保安装了Maven 3.1或更高版本。在命令行界面内,输入mvn -version确认版本号。
• 安装Docker for Predix Machine 17.1.0或更高版本,其他Windows和 Linux 系统要求参见 https://www.docker.com 。
可以使用命令行脚本生成Predix机器作为Docker图片镜像,脚本与生成运行时容器的类似。
Docker创建选项
通过GeneratContainers.sh命令,使用现有的Predix机器创建Docker图片镜像,如下:
GenerateContainers.sh [options]
例如:
sh GenerateContainers.sh -e ~/eclipse-jee-mars-4.5.0-macosx-cocoa-x86_64.tar.gz -c PROV sh GenerateContainers.
sh -e $ECLIPSE_PATH -c CUSTOM /Users/user1/myMachine.img
sh GenerateContainers.sh -e $ECLIPSE_PATH -c AGENT -d --docker_host myDockerHost --arch x86_64 --http_proxy http://proxy-src.research.ge.com:8080 --https_proxy http://proxy-src.research.ge.com:8080 --no_proxy localhost,127.0.0.1,*.ge.com
GenerateContainers.sh命令使用以下选项:
必选:
-e <ECLIPSE_PATH> (必选):下载的Eclipse文件的路径
可选:
•-c <CONTAINER_TYPE>:要创建的Predix机器容器的类型。
o AGENT:用于Docker支持带有代理特性的Predix机器。在Docker化的模型中运行时需要该容器,以便与边缘SDKedge sdk一起使用。 o AGENT_DEBUG:用于Docker支持带有代理特性的Predix机器调试。 o PROV:Predix机器配置(仅包括支持配置的JAR捆绑束组件) o DEBUG:带有Predix机器网页控制台的Predix机器调试 o TECH:技术人员控制台图片镜像 o CONN: Predix机器提供连接支持(VPN)。 o CUSTOM <图片镜像文件完整路径>:使用Eclipse中创建的自定义图片镜像的Predix机器容器。 o TUNNEL: 采用HTTP隧道传输的Predix机器容器。 o [未指定]:Predix机器默认容器
•-d: 使用以下选项创建Predix机器 作为Docker图片镜像:
o --docker_host <DOCKER_HOST>: 使用的Docker主机名称。 o --arch <ARCHITECTURE>: Docker图片镜像的目标架构。默认:x86_64 o --ftp_proxy <FTP_PROXY_SERVER>: Docker化 Predix 机器的FTP proxy服务器设置 o --http_proxy <PROXY_SERVER>: Docker化 Predix 机器的HTTP proxy服务器设置 o --https_proxy <PROXY_SERVER>: Docker化 Predix 机器的HTTPS proxy服务器设置 o --no_proxy <PROXY_EXCEPTIONS>: 不使用proxy的一组域名,用逗号分隔
- 打开一个终端窗口。
-
在命令行中,导航至
<SDK download location>/predixmachinesdk-17.1.0/utilities/containers
文件夹。 -
运行以下命令:
a. Windows系统:
GenerateContainers.bat -e <full path and name of downloaded Eclipse.zip file> -c <container type -d <Docker build option> >
b. UNIX和Linux系统:
GenerateContainers.sh -e <full path and name of downloaded Eclipse.tar.gz file> -c <container type> -d <Docker build option>
4.在Linux系统中:
5. GenerateContainers.sh -e /home/eclipse-jee-mars-SR2-linux-gtk-x86_64.tar.gz -c AGENT
6. 此脚本将在<SDK download location>/predixmachinesdk-17.1.0/utilities/containers 文件夹内生成一个PredixMachine-agent-17.1.0容器。
- 注:
- 为了以后能够更新你的Predix Machine Docker容器,一定要使用名为 PredixMachine的Docker图片镜像。如果将名称不是Predix Machine的Docker图片镜像推送给已经运行Predix Machine的设备,会发生错误。如果Predix Machine Docker图片镜像的名称不是 PredixMachine ,将不会被Predix Machine Supervisor识别,无法启动。
利用Predix机器运行时容器生成Docker图片镜像
• 找到你要创建Docker图片镜像(Docker化)的Predix Machine运行时容器
• 安装Docker for Predix Machine 17.1.0或更高版本,其他Windows和Linux系统要求参见 https://www.docker.com 。
可以使用 Dockerize.bat或Dockerize.sh 脚本,指定创建选项,包括指定容器名称,通过现有的Predix机器运行时容器创建Docker图片镜像。
创建Docker图片镜像时,可使用以下选项:
• -m: (必选)创建Docker图片镜像的Predix机器路径。 • --docker_host: Docker主机的名称。 • --container_name: Predix机器容器有具体意义的名称。例如,配置容器可使用名称’provision’。此名称构成了Docker图片镜像标签的一部分。默认为’default’。
重要:
创建容器时,不要使用以下名称:
o predixmachine
o bootstrap
• --tar_name: TAR文件的基础名称。 • --arch <ARCHITECTURE>: Docker图片镜像的目标架构。默认:x86_64。 • --ftp_proxy <FTP_PROXY_SERVER>: Docker化Predix机器的FTP proxy服务器设置。 • --http_proxy <PROXY_SERVER>: Docker化 Predix机器的HTTP proxy服务器设置。 • --https_proxy <PROXY_SERVER>: Docker化 Predix 机器的HTTPS proxy服务器设置。 • --no_proxy <PROXY_EXCEPTIONS>: 不使用proxy的一组域名,用逗号分隔
- 打开一个终端窗口。
-
在命令行中,导航至
<SDK download location>/predixmachinesdk-17.1.0/utilities/containers
- 根据你的系统环境,运行以下命令:
a. Windows系统: DockerizeContainer.bat -m <path of Predix Machine for which Docker image is created> ---docker_host <Docker host name> --container_name <container name> tar_name <tar file name> --arch <Architecture> --http_proxy -- <HTTP proxy server setting for Dockerized Predix Machine runtime container> --https_proxy <HTTPS proxy server setting for Dockerized Predix Machine runtime container> --no_proxy <Comma-separated domains that do not go through proxy> b. UNIX和Linux系统: DockerizeContainer.sh -m <path of Predix Machine for which Docker image is created> ---docker_host <Docker host name> --container_name <container name> tar_name <tar file name> --arch <Architecture> --http_proxy <HTTP proxy server setting for Dockerized Predix Machine runtime container> --https_proxy <HTTPS proxy server setting for Dockerized Predix Machine runtime container> --no_proxy <Comma-separated domains that do not go through proxy>
4.例如,在Linux系统中:
5.
DockerizeContainers.sh -m c:/MyPredixMachine --docker_host myDockerHost --http_proxy http://my.proxy.com:8080 --https_proxy http://my.proxy.com:8080 no_proxy "localhost,127.0.0.1*.my.com" DockerizeContainer.sh -m c:/MyPredixMachine --docker_host myDockerHost --container_name provision --http_proxy http://my.proxy.com:8080 --https_proxy http://my.proxy.com:8080 --no_proxy "localhost,127.0.0.1,*.my.com"
6.
此脚本将在<SDK download location>/predixmachinesdk-17.1.0/utilities文件夹内创建Predix机器 Docker图片镜像。
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 『中级篇』docker之CI/CD持续集成-项目生成镜像(76)
- 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
- KVM镜像制作及挂载镜像文件
- 查看Docker镜像仓库中镜像的所有标签
- Vagrant 使用国内镜像安装插件和 box 镜像
- 不要轻易使用 Alpine 镜像来构建 Docker 镜像,有坑!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。