らくがきちょう

なんとなく

Ansible 2.4.0 な Docker コンテナイメージ

ansible/ansiblefedora26py3centos7 を試したのですが、「freezing」になってしまいます…

# docker run -it ansible/ansible:fedora26py3
Unable to find image 'ansible/ansible:fedora26py3' locally
fedora26py3: Pulling from ansible/ansible
4db9daa7aafd: Pull complete
274512e201bb: Pull complete
40a3accad47d: Pull complete
20605cc412a0: Pull complete
dab12d958895: Pull complete
e98e9e034872: Pull complete
6da2ef51a8a5: Pull complete
2d8a068d6c18: Pull complete
158774bf4fd2: Pull complete
Digest: sha256:8fb0eb53fb0ab6ba78403568543565d09bf2adadd183c7137cdd3db65fb48ad6
Status: Downloaded newer image for ansible/ansible:fedora26py3
Failed to mount cgroup at /sys/fs/cgroup/systemd: Operation not permitted
[!!!!!!] Failed to mount API filesystems, freezing.
Freezing execution.

現時点で最新の Ansible 2.4 系を使いたかったこともあり、Ansible 用の Docker コンテナイメージを作成してみました。 ベースには CentOS7 を使いました。

Dockerfile はこちらにありますが、現時点では以下の内容にしてあります。

#vim: set ft=dockerfile:
FROM centos:latest

RUN yum -y update \
 && yum -y install gcc python-devel vim \
 && curl -O https://bootstrap.pypa.io/get-pip.py \
 && python get-pip.py \
 && rm -f get-pip.py \
 && pip install ansible==2.4.0 \
 && yum clean all

実際の実行例は以下の通りです。

# docker run -it sig9/ansible:latest ansible --version
ansible 2.4.0.0
  config file = None
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.5 (default, Aug  4 2017, 00:39:18) [GCC 4.8.5 20150623 (Red Hat 4.8.5-16)