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

Docker容器无法在Azure应用服务中启动

冀望
2023-03-14

我过去曾在Azure应用服务上发布过一系列Docker应用,但由于某些原因,在Azure运营模式中创建新的生成和发布管道后,我的Docker容器将无法在Azure应用服务中运行。这些特殊的容器味道Linux。

在各种Docker映像之间切换,任何使用旧管道构建的映像都可以工作,但使用新管道构建的映像则不行。

当我将应用程序服务的日志文件中的确切命令复制粘贴到本地命令行时,它工作得很好。我可以使用与应用程序服务相同的端口访问该站点。

这是我的Dockerfile:

FROM node:8.12.0-alpine

ARG BUILD_VERSION
ENV BUILD_VERSION ${BUILD_VERSION}

ENV LOCAL_DEVELOPMENT false
ENV NODE_ENV production

ARG STAGING_DIRECTORY

WORKDIR ~/
COPY ${STAGING_DIRECTORY} .

ENTRYPOINT node . server ${BUILD_VERSION}

共有1个答案

欧阳声
2023-03-14

虽然我不能确定是什么导致了您的问题,但可能是因为在您的容器中运行ENTRYPOINT命令时出错。

您是否可能正在使用docker compose。yml文件?您的COPY命令不能有/ 或当前目录之外的任何内容。为此,您需要通过docker build命令或docker compose来更改上下文。yml文件。

我遇到了一个类似的问题,我更改了WORKDIR,然后进行了复制而不是将WORKDIR留在~/并执行COPY${STAGING\u DIRECTORY}

在Azure中,转到“容器设置”。在下面,你会看到一个日志。您可以使用此日志确定您遇到的问题。

它会看起来像这样:

2018_10_16_RD00155DFE4342_default_docker.log:
2018-10-16T16:14:33.084558195Z     throw err;
2018-10-16T16:14:33.084568395Z     ^
2018-10-16T16:14:33.084576596Z 
2018-10-16T16:14:33.084584396Z Error: Cannot find module '/home/vsts/work/1/a/publish'
2018-10-16T16:14:33.084592096Z     at Function.Module._resolveFilename (module.js:548:15)
2018-10-16T16:14:33.084599797Z     at Function.Module._load (module.js:475:25)
2018-10-16T16:14:33.084607297Z     at Function.Module.runMain (module.js:694:10)
2018-10-16T16:14:33.084614697Z     at startup (bootstrap_node.js:204:16)
2018-10-16T16:14:33.084622297Z     at bootstrap_node.js:625:3

2018_10_16_RD00155DFE4342_docker.log:

2018-10-16 16:14:01.928 ERROR - Container [CONTAINER_NAME] for site [APP_SERVICE_NAME] has exited, failing site start
2018-10-16 16:14:27.665 INFO  - Starting container for site
2018-10-16 16:14:27.666 INFO  - docker run -d -p 26257:80 --name [CONTAINER_NAME] -e DOCKER_CUSTOM_IMAGE_NAME=[...]

2018-10-16 16:14:29.735 ERROR - Container [CONTAINER_NAME] for site [APP_SERVICE_NAME] has exited, failing site start
2018-10-16 16:14:31.998 INFO  - Starting container for site
2018-10-16 16:14:31.999 INFO  - docker run -d -p 3225:80 --name [CONTAINER_NAME] -e DOCKER_CUSTOM_IMAGE_NAME=[...]

2018-10-16 16:14:34.009 ERROR - Container [CONTAINER_NAME] for site [APP_SERVICE_NAME] has exited, failing site start

*\u默认\u docker。日志文件中有您的Docker文件在*\u Docker时喷出的错误。日志中有来自Azure的一般错误消息。

 类似资料:
  • 问题内容: 在我的Dockerfile中,我试图安装多个服务,并希望在启动容器时使它们全部自动启动。服务之一是mysql,当我启动容器时,我看不到mysql服务正在启动。当我尝试手动启动时,出现错误: Dockerfile: 我的start.sh文件: Docker构建: Docker运行: 我检查了图像,也无济于事。如何使用通过systemctl / service命令启动的服务启动容器。 问题

  • 在我的Dockerfile中,我试图安装多个服务,并希望在启动容器时使它们都自动启动。其中一个服务是mysql,当我启动容器时,我没有看到mysql服务启动。尝试手动启动时,出现错误: DockerFile: 我已经检查了映像,但这也没有帮助。如何用使用systemctl/service命令启动的服务启动容器。

  • 我尝试在英国西部地区创建一个Azure服务容器。我经历了所有的步骤没有问题,但是一旦我点击创建后,我遇到了几分钟: 所提供的位置ukWest不适用于资源类型Microsoft。容器服务/容器服务。资源类型的可用区域列表是“日本东部、中部、东部2、日本西部、东部、南部、澳大利亚东部、澳大利亚东部、巴西南部、南部、西部、北部、西部、西部、北部、北部、北部、北部、东部”。 好吧,我意识到这是我的错误,于

  • 我有一个简单的应用程序构建为docker图像(ubuntu),并把它放入docker容器。它有几个卷附加到它。我想将此容器推送到Azure AppServiceLinux。我尝试了几个选择,但没有成功。 > Azure CLI创建web应用程序并将容器推送到Azure容器注册表,然后将其部署到web应用程序。 给出错误。 将容器上传到,并更新Web应用容器设置以将此容器加载到Web应用中。 给出或

  • 问题内容: 码头工人给我一个困难时期。我按照以下说明进行操作,以便在运行由strato.de托管的Ubuntu 14.04的虚拟服务器上安装docker。 执行此行直接将我带入此错误消息: 安装完成后,我安装了上述两个软件包。现在我的问题是我无法让docker运行。 结果是: 结果是 和 结果是 有人对缺少哪些依赖项有任何线索吗?还有什么可能出问题了?码头工人是否提供任何日志? 我正在来回寻找解决