1

我们已将 ansible 配置为在 IIS 环境中部署我们的各种应用程序。我正在尝试创建已部署应用程序的 docker 映像,以便我可以根据需要启动容器进行测试等。

我计划在Windows IIS映像上构建,在 azure 上启动容器,运行我们的 ansible 以在服务器上安装所有内容,然后将映像保存在容器上。

我找不到任何关于如何docker commit将容器映像放入我们的私有 azure 容器注册表的文档。

可能吗?

4

1 回答 1

1

如果您在 azure 中有一个现有的 Docker 注册表,您应该能够使用该az acr login --name myregistry命令对其进行身份验证https://docs.microsoft.com/en-us/azure/container-registry/container-registry-get-started-docker -cli。确保为要推送的容器映像创建了注册表。

接下来,您可以在 azure 中运行容器并执行您想要的所有安装。通过 SSH 或 RDP 连接到 Azure 中运行此容器的实例。现在运行docker ps并找到正确容器的容器 ID。接下来,使用docker commit <container id> myregistry.azurecr.io/samples/nginx.

那么,刚刚docker push myregistry.azurecr.io/samples/nginx

也不确定您的用例是什么,但启动一个容器以便以这种方式修改和提交它似乎是 Docker 的一个非典型用例,因为构建无法通过 Dockerfile 重现。看起来有办法使用 Ansible playbooks 用 ansible-containers https://docs.ansible.com/ansible-container/之类的东西替换 Dockerfile,所以你可能想看看(我从来没有使用过这个工具) .

于 2019-04-11T07:27:51.163 回答