【问题标题】:Are Azure container instances made for running simple command with simple output?Azure 容器实例是否用于运行带有简单输出的简单命令?
【发布时间】:2019-01-11 15:13:40
【问题描述】:

我正在尝试使用 Azure 实例,我需要对服务本身进行一些解释。

我想使用 ACI 来启动 docker 运行一个提示命令输出的命令并停止 docker。

ACI 是否适合这类事情?

Docker 文件如下所示。

FROM alpine
RUN apk add ffmpeg
CMD ffprobe -show_streams -show_format -loglevel warning -v quiet -print_format json /input.video

使其工作的 docker run 命令如下所示 docker run --name ffprobe-docker -i -v /path/test.ts:/input.video --rm 72e84b2825af

问题?

  • 我无法启动我的脚本,因为我可以让它在我的机器上运行 azure

我做了什么?

  1. 我创建了一个私人注册库,并在其中上传了我的图片。
  2. 我运行az container createcommand 女巫创建了资源

现在我不知道下一步该怎么做才能使其按预期工作? 因为容器已终止,并且命令结束后,az container exec --exec-command 在终端上没有显示任何内容。

【问题讨论】:

    标签: azure docker containers


    【解决方案1】:

    对于 ACI,您可以从 ACR 或其他注册表中的您自己的 Docker 映像创建它。您也可以在其中运行命令。但是要注意不能在里面运行 Docker 命令,因为不能在里面嵌套容器。它不能是 Docker 服务器。它可以是一个容器。

    如果你使用 CLI 命令az container exec --exec-command 那么它会是这样的:

    作为--exec-command参数的命令应该是一个可以在你的Docker镜像中运行的bash命令。

    我认为 ACI 最大的优势是最快、最简单,而且无需管理任何虚拟机,也无需采用更高级别的服务。

    希望这会对您有所帮助。有更多问题请给我留言。

    【讨论】:

    • 好的,我明白了。我还有两个问题: 1:我应该如何修改我的 dockerfile 以使我的容器能够运行以使我的 az container exec ? 2:我的 docker 会经常使用,所以最好删除容器并在之后重新创建它还是我应该执行启动/停止例程?
    • 1.如果您的 ACI 处于运行状态,您始终可以执行该命令。如果你的 docker 镜像可以正常工作,那么它也可以作为 ACI 正常工作。 2.我认为re-create和stop是一样的。因为当您停止容器时,它将终止,这意味着删除。所以就停下来吧。您可以查看this 了解费用。
    • @Rolljee 还有问题吗?如果可以的话,我会尽力帮助你。或者,如果它有帮助,您可以接受它作为答案。
    • 不,我没有更多问题,我周末出去了,谢谢您的时间和解释,这很有帮助。我设法通过添加一个命令使其工作,使 docker 等待我的命令然后它正确执行。
    猜你喜欢
    • 2014-11-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    相关资源
    最近更新 更多