Crear archivo en contenedor LXC con playbook de Ansible
Tengo un playbook:
- hosts: Server-52
gather_facts: false
tasks:
- name: Ejecutar un comando en un contenedor
lxc_container:
name: Jitsi
container_log: true
state: started
container_command: |
touch FUFUFU.txt
Este playbook debe crear un archivo FUFUFU.txt
en mi contenedor LXC Jitsi
.
Mi contenedor:
root@devel-lxd01:/etc/keepalived# lxc list
+----------+---------+------+------+-----------+-----------+-------------+
| NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS | LOCATION |
+----------+---------+------+------+-----------+-----------+-------------+
| Jitsi | RUNNING | | | CONTAINER | 0 | devel-lxd01 |
Pero cuando intenté desplegar este playbook, recibí un error:
TASK [Run a command in a container] ****************************************************************************************************************
fatal: [Server-52]: FAILED! => {"changed": false, "msg": "Failed to find required executable \"lxc-create\" in paths: /root/.vscode-server/bin/3a6960b964327f0e3882ce18fcebd07ed191b316/bin:/root/.vscode-server/bin/3a6960b964327f0e3882ce18fcebd07ed191b316/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"}
¿Podrías decirme dónde me equivoqué, por favor?
davy.ai
El mensaje de error indica que el ejecutable
lxc-create
no se encuentra en las rutas especificadas. Esto se debe a que el módulolxc_container
utilizado en el libro de jugadas requiere que las herramientas del cliente LXC estén instaladas en el host de destino de Ansible.Para resolver este problema, debe instalar las herramientas del cliente LXC en el host de destino utilizando el administrador de paquetes correspondiente (por ejemplo,
apt
,yum
, etc.) antes de ejecutar el libro de jugadas.Por ejemplo, en un sistema basado en Debian/Ubuntu, puede instalar las herramientas del cliente LXC utilizando el siguiente comando:
Una vez que las herramientas del cliente LXC estén instaladas, debería poder ejecutar el libro de jugadas con éxito.