TranslateProject/translated/tech/20161007 Deploy containers with Atomic Host, Ansible, and Cockpit.md
2016-10-12 00:55:15 +08:00

4.6 KiB
Raw Blame History

使用Atomic HostAnsible和Cockpit部署容器

atomic-ansible-cockpit-containers

在我在红帽工作的过程中, 我每天在 Fedora Atomic host 上使用 Docker. 来自Project Atomic的Atomic Host是一个轻量级容器操作系统可以以Docker格式运行Linux容器。它为提高效率被修改使其成为用于云环境的Docker运行时系统的最佳选择。

幸运的是,我发现一个很好的方式来管理在主机上运行的容器: Cockpit. Cockpit是一个具有漂亮的Web UI的GNU / Linux服务器的远程管理器。它帮我管理在主机上运行的服务器和容器。你可以看更多的关于Cockpit在之前发布的 这篇导览文  但是,我也想在主机上自动运行容器,我已经使用 Ansible.

请注意我们不能在Atomic主机上使用dnf命令。主机不是设计为通用操作系统而是更适合容器和其他目的。但在Atomic主机上设置应用程序和服务仍然非常容易。这篇文章向您展示了如何自动化和简化这个过程。

设置组件

开始之前请确保你的系统上安装了Ansible。

sudo dnf -y install ansible
$ git clone https://github.com/trishnaguha/fedora-cloud-ansible.git
$ cd fedora-cloud-ansible
$ cd cockpit
$ vim inventory
  1. 使用你的Atomic 主机IP替换掉 IP_ADDRESS_OF_HOST。
  2. 用您的SSH私钥文件的路径替换行ansible_ssh_private_key_file ='PRIVATE_KEY_FILE'中的PRIVATE_KEY_FILE。

现在保存并退出 inventory 文件。

接下来,编辑 ansible 配置文件:

$ vim ansible.cfg

把他们放在一起!

现在是运行PlayBook的时候了。此命令开始运行Atomic主机上的Cockpit容器

$ ansible-playbook cockpit.yml

Cockpit login screen

管理你的容器

使用Atomic主机的凭据或以root用户身份登录。然后访问Cockpit管理器上的Containers部分查看Atomic主机上运行的容器。在下面的示例中您会看到我还设置了其他类似 httpd 和 redis:

Cockpit panel for managing containers

注意该界面允许您直接在Cockpit管理器中使用Run和Stop按钮启动和停止容器。您还可以使用Cockpit管理器管理您的Atomic主机。转到工具 - >终端。在这里里你可以使用Atomic主机的终端

Cockpit terminal panel

如果您打算在Atomic主机上部署容器化的应用程序则可以简单地为其编写PlayBook。然后您可以使用ansible-playbook命令进行部署并使用Cockpit管理容器。

Running ansible-playbook to deploy multiple containers

你可以随意的Fork或添加容器的PlayBook在这个仓库 https://github.com/trishnaguha/fedora-cloud-ansible.


via: https://fedoramagazine.org/deploy-containers-atomic-host-ansible-cockpit/

作者:trishnag

译者:Bestony

校对:校对者ID

本文由 LCTT 原创编译,Linux中国 荣誉推出