turkenh.provision_docker

Estado de la construcción

provision_docker

Un rol de Ansible utilizado para crear e iniciar contenedores de Docker para cada host del inventario utilizado en una ejecución. Útil para pruebas.

Publicación del blog sobre cómo usar provision_docker para probar roles.

Imágenes de Docker recomendadas.

chrismeyers/centos6
chrismeyers/centos7
chrismeyers/ubuntu12.04
ubuntu-upstart:14.04

Nota: Las imágenes mencionadas anteriormente Dockerfiles están diseñadas para ejecutar sistemas de inicio y openssh.

Ejemplo de Playbook

Pruebas con Travis-CI

Mira .travis.yml para ver cómo probar tu rol usando travis-ci.

Mac OS X + docker-machine + VirtualBox

provision_docker depende de poder acceder a los contenedores mediante ssh. Por lo tanto, la IP del contenedor debe ser accesible (debe existir una ruta). Si estás usando Docker toolbox en OS X + VirtualBox, los contenedores no están enrutados al host. Ejecuta los siguientes comandos para agregar una ruta a los contenedores en la máquina virtual huésped.

/usr/sbin/scutil -w State:/Network/Interface/vboxnet0/IPv4 -t 0
sudo /sbin/route -n add -net 172.17.0.0 -netmask 255.255.0.0 -gateway $(docker-machine ip)

La ruta no persiste después de reiniciar. Para hacer que los cambios persistan, edita /Library/LaunchDaemons/com.docker.route.plist.

<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE plist PUBLIC '-//Apple//DTD PLIST 1.0//EN' 'http://www.apple.com/DTDs/PropertyList-1.0.dtd'>
<plist version='1.0'>
<dict>
  <key>Label</key>
  <string>com.docker.route</string>
  <key>ProgramArguments</key>
  <array>
    <string>bash</string>
    <string>-c</string>
    <!-- Necesitas adaptar vboxnet0 a la interfaz que se ajuste a tu configuración, usa ifconfig para encontrarla -->
    <string>/usr/sbin/scutil -w State:/Network/Interface/vboxnet0/IPv4 -t 0;sudo /sbin/route -n add -net 172.17.0.0 -netmask 255.255.0.0 -gateway 192.168.99.100</string>
  </array>
  <key>KeepAlive</key>
  <false/>
  <key>RunAtLoad</key>
  <true/>
  <key>LaunchOnlyOnce</key>
  <true/>
</dict>
</plist>

Mac OS X + docker-machine + VMware Fusion

sudo /sbin/route -n add -net 172.17.0.0 -netmask 255.255.0.0 -gateway $(docker-machine ip default)

Trabajo similar

Acerca del proyecto

Provision docker containers using inventory.

Instalar
ansible-galaxy install turkenh.provision_docker
Licencia
Unknown
Descargas
79
Propietario