python - 如何在另一台机器上测试 Docker 容器?

我写了一个简单的脚本如下:

#main.py

def test_function():
    val = input('please enter a number')
    for i in range(int(val)):
        print (i)

我将它 docker 化并放入一个容器中,然后从那里运行它。一切正常。

我有另一台装有 Linux 操作系统的机器。我怎样才能在那里测试这个容器?我需要简单地复制粘贴它还是什么?

回答1

您需要在另一台机器上安装 Docker,然后将映像推送到 docker 注册表(例如 dockerhub / AWS ECR)。

我使用 ECR。您需要创建一个注册表,然后通过运行 docker tag <source image> <url of the registry> 使用注册表的 url 标记您的 docker 图像,然后运行 docker push <image name>

并从另一台机器上拉它,运行 docker pull <url of the rigistry>

或者,您可以简单地在另一台机器上安装 docker,将 dockerfile 复制到那里,然后运行 docker build -t <image name> /path/to/file

回答2

有几个抽象,你应该使用它们:

  • 语言抽象(你的情况是 python )
  • 操作系统抽象(在您的情况下为 docker )
  • api抽象(在您的情况下为标准输出)

对于像您这样的简单功能,没有理由对 dockerized 应用程序进行两次测试,因为 docker 很好地处理了 os 抽象,并使您的容器环境独立(大多数情况下)。

对于您的功能,您应该将输出从 stdout 更改为其他来源,并测试数据,您将使用单元测试放在那里。

你应该使用相同的语言,它是库(如 PyTest)。

相似文章

最新文章