当前位置: 首页 > 知识库问答 >
问题:

在azure容器注册表实例上运行Spring Boot应用程序

华宏逸
2023-03-14

我试图在Azure上运行一个Spring Boot应用程序。这就是我想要实现的:

本地项目>Azure Devops Git Repos>Azure容器注册表

从我的本地,我把变化推到Azure Devops回购。Repository有一个管道,用于进行maven打包、创建docker映像并将映像推送到Azure容器注册表。我正在使用Azure容器实例运行容器映像。Container实例部署成功,但是当我试图访问spring boot application中定义的rest api时,什么也没有发生。页面继续加载。

FROM openjdk:8
VOLUME /tmp
ADD target/command-center.jar command-center.jar
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "/command-center.jar"]
# Docker
# Build and push an image to Azure Container Registry
# https://docs.microsoft.com/azure/devops/pipelines/languages/docker

trigger:
- master

resources:
- repo: self

variables:
  # Container registry service connection established during pipeline creation
  dockerRegistryServiceConnection: 'f4031dc5-3c27-4f41-be8c-2abdf064eaf2'
  imageRepository: 'commandcenter'
  containerRegistry: 'sapcemission.azurecr.io'
  dockerfilePath: '**/command-center/Dockerfile'
  tag: '$(Build.BuildId)'
  
  # Agent VM image name
  vmImageName: 'ubuntu-latest'

stages:
- stage: Build
  displayName: Build and push stage
  jobs:  
  - job: Build
    displayName: Build
    pool:
      vmImage: $(vmImageName)
    steps:
    - task: Maven@3
      inputs:
        mavenPomFile: 'pom.xml'
        publishJUnitResults: true
        testResultsFiles: '**/surefire-reports/TEST-*.xml'
        javaHomeOption: 'JDKVersion'
        mavenVersionOption: 'Default'
        mavenAuthenticateFeed: false
        effectivePomSkip: false
        sonarQubeRunAnalysis: false
    - task: Docker@2
      displayName: Build and push an image to container registry
      inputs:
        command: buildAndPush
        repository: $(imageRepository)
        dockerfile: $(dockerfilePath)
        containerRegistry: $(dockerRegistryServiceConnection)
        tags: |
          $(tag)

Azure容器实例设置:

我在这里做错了什么?

共有1个答案

燕嘉颖
2023-03-14

Azure容器实例不像Docker那样支持端口映射。因此,在您的情况下,当您设置ACI时,port属性应该设置为8080(而不是默认值80)。

 类似资料:
  • 作者:陈希章 发表于2017年3月22日 在此前的文章中,我给大家介绍了分别用Graph 浏览器以及第三方工具(POSTMAN)快速体验Microsoft Graph的功能,其中有一个重要的环节就是,开发人员需要访问Microsoft Graph的话,其实是事先需要注册一个应用程序的。Graph 浏览器是特例,因为这个应用程序是微软官方注册好的。而大家在POSTMAN这篇文章中已经看到我注册的自定

  • 作者:陈希章 发表于 2017年3月22日 上一篇 介绍了Microsoft Graph应用程序的一些概念,以及目前还比较普遍的Azure AD 1.0应用程序的注册方式。但正如我多次提到的那样,虽然目前功能还在不断完善,但Azure AD 2.0会逐渐成为主流,它有如下几个优势 Azure AD 2.0 应用程序,既支持访问工作或学校账号,也支持访问个人账号的资源。 注册Azure AD 2.0

  • 主要内容:部署注册表容器注册表是一个存储和内容交付系统,它存储他们的Docker(它是用于运行应用程序的预定义图像的数据库)。 部署注册表 可以使用以下命令部署注册表: 步骤(1): 首先,使用SSH(Secure Shell)登录到您的GitLab服务器。 步骤(2): 现在使用以下命令启动注册表容器: 将第一部分指定为主机端口,将第二部分指定为容器内的端口。 当Docker重新启动时,标志会自动重新启动注册表。

  • 我在azure中有一个运行docker容器的应用程序服务。 日志显示它正在使用下面的docker run命令运行。我隐藏了一些私人公司的价值观。 docker run-d-p 4040:443--name hidden-e WEBSITE\u SITE\u name=hidden-e WEBSITE\u AUTH\u ENABLED=False-e PORT=443-e WEBSITE\u ROL

  • 错误:container_linux.go:247:启动容器进程导致“exec:\”-w\“:在$path中找不到可执行文件”c:\program files\docker toolbox\docker.exe:来自守护进程的错误响应:oci运行时错误:container_linux.go:247:启动容器进程导致“exec:\”-w\“:在$path中找不到可执行文件”。

  • null 是否有其他方法,如何实现这一点支持OAuth2.0,但不需要用户activity,因为应用程序作为一个damon运行。