在 LXD 容器中应如何编写/自动部署应用程序?
例如,在 LXD 容器中部署应用程序以使用 bash 脚本(部署应用程序)的最佳方式是什么?如何通过在主机上执行命令在容器内执行此 bash 脚本?
是否有任何工具/方法以类似于 Docker 配方的方式执行此操作?
就我而言,我使用 Ansible 来:
例如,您可以使用已部署的服务和/或代码构建您自己的镜像,并从该镜像构建特定容器。
我在 LXD 支持 Ansible(Ansible 2.2)之前就这样做了,当我连接到容器以部署服务/代码时,我更喜欢使用 ssh 而不是 lxd 连接。他们附带了一个配置文件,我在其中设置了我的 ssh 公钥(通过密钥进行直接 ssh 连接......没有密码)
看看我在 bitbucket devops_lxd_containers上的开源项目它包括:
整个系统建立在镜像构建最好分层完成的前提下。我们构建了一个更新的 Ubuntu 映像。我们从中构建了一个强化的 Ubuntu 映像。我们从中构建了一个基本的 Apache 映像。从它我们构建一个应用程序特定的图像,如我们的 apacheKV 示例。目标是永远不要重新构建一次以上,并重新使用基本JDK 等通用功能作为所有依赖于 JDK 的映像的源,这样我们就可以避免在任何位置出现重复代码。我努力将图像或模板创建与部署和端口映射完全分开。唯一的例外是,在我们知道如何映射其他图像之前,我无法完成第 7 层路由图像的创建。