Kubernetes Azure容器实例注册表(ACI)

什么是Azure容器实例?
Microsoft Azure容器实例(ACI)为用户提供了一种在云中部署容器应用程序的快速而简单的方法,而无需配置虚拟机或采用更高级别的服务。使用ACI,您可以通过部署Docker容器来扩展和编排操作,该容器从JFrog Artifactory中提取Docker映像,同时提供快速启动和一秒钟计费粒度的优势。
ACI和所有容器运行时一样,需要一个容器注册表从…拉出当您试图了解正在运行的容器的来源和安全性时,JFrog Artifactory可以帮助您Kubernetes注册表。Artifactory作为组织所有二进制资源的单一访问点。2022世界杯阿根廷预选赛赛程为存储库提供单一的真实来源,可以消除为构建、开源库和其他第三方组件管理多个存储库的复杂性。这篇博文展示了如何将Artifactory与ACI集成。
为什么使用Artifactory作为Kubernetes注册表?
JFrog Artifactory快速自信地交付您的软件,因为它支持:
- 管理多个存储库几乎每种包装类型。
- 控制不同开发团队和部署系统的访问。
- 管理CI管道中的构建推广。
- 集成庞大的工具生态系统。
- 优化存储解决构建问题性能问题。
集成Artifactory和Azure容器实例
为了演示ACI和Artifactory的集成,我们将:
- 使用Jenkins构建一个简单的NPM包node . js应用程序
- 将NPM构建到Docker映像中并推送到本地Docker存储库由Artifactory管理
- 通过使用Azure CLI从虚拟Docker存储库中提取Docker映像,将容器部署到ACI。
先决条件:让Jenkins和Artifactory启动并运行
如果已经有Jenkins和Artifactory,可以跳过这些步骤。
步骤1:创建Jenkins作业来构建节点应用程序
按照本教程中的步骤操作来配置Jenkins作业这个应用程序启动简单的节点服务器,并显示一个显示包版本的页面。

步骤2:配置Artifactory作为Docker注册表
了解更多关于使用Artifactory作为Docker注册表,点击在这里。
在Artifactory中创建以下Docker存储库:
- docker-local:本地Docker存储库
- docker-remote:远程Docker存储库代理/ https://registry - 1. docker.io/缓存
- Bintray-docker-remote:远程Docker存储库代理/缓存https://docker.bintray.io
- 码头工人:虚拟Docker存储库聚合上面提到的本地和远程存储库。
3:创建Jenkins管道
创建一个Jenkins管道来构建Docker映像并将其推送到Artifactory。
1.使用Jenkins凭证登录到Jenkins。
2.添加如下参数:
- ART_SERVER_URL: Artifactory服务器的URL
- ART_DOCKER_REGISTRY: Artifactory Docker注册表名称
- CREDENTIAL_ID: Artifactory凭据ID
3.创建一个新的Jenkins管道作业。
4.复制詹金斯文件从GitHub示例回购到管道脚本,并单击现在构建。
5.在Artifactory中检查您新发布的Docker映像。

步骤4:将Docker镜像部署到Azure ACI
1.安装Azure CLI。
2.创建资源组。
az组创建——name myResourceGroup——location eastus
命令用来创建一个名为myResourceGroup在eastus的位置。
查看输出信息。
地点名称-------------------eastus myResourceGroup
3.通过从Artifactory中提取Docker映像,将容器部署到ACI。
创建一个Az容器jfrogtraining-docker-dev.jfrog。Io /node-version:latest——registry-login-server jfrogtraining-docker-dev.jfrog。i . io——registry-password $ARTIFACTORY_PASSWORD——registry-username jainishs——resource-group myResourceGroup——ip-address public——port 3000——memory 1
4.获取容器的公网IP地址。
az容器显示——name mycontainer——resource-group myResourceGroup——查询ipAddress.ip
查看输出信息。
结果 -------------40.71.201.235
5.访问mycontainer容器使用第4步输出中提供的IP地址。在我们的例子中,我们使用https://40.71.201.235:3000。
6.查看容器运行日志。
az容器日志——name mycontainer——resource-group myResourceGroup
查看输出信息。
> node-version@2.2.13 start /usr/src/app > node ./bin/www GET / 200 158.680 ms - 260 GET /stylesheets/style.css 200 4.370 ms - 111 GET /images/images.png 200 1.803 ms - 6146 GET /favicon.ico 404 22.916 ms - 970p . html
恭喜你!
您现在有了一个简单的管道,用于构建node . js在Artifactory中管理NPM包,然后在Artifactory中构建一个Docker容器,具有包之间的可追溯性。这允许您在Azure容器实例中快速运行容器,同时知道它包含什么以及从哪里来。
