# Matrix Ansible Controller # Portable container for managing matrix-docker-ansible-deploy playbook # # Usage: # docker compose up -d # docker exec -it matrix-ansible-controller bash # just install-all services: controller: build: . image: matrix-ansible-controller:latest container_name: matrix-ansible-controller hostname: matrix-controller # Keep container running for interactive use stdin_open: true tty: true volumes: # SSH keys (read-only) - for connecting to matrix server - /root/.ssh:/ssh:ro # Persistent playbook directory (survives container rebuilds) - ./data/playbook:/playbook # Your inventory configuration (vars.yml, hosts, etc.) - ./data/inventory:/inventory # Persist ansible cache/facts - ./data/ansible-cache:/root/.ansible environment: - ANSIBLE_HOST_KEY_CHECKING=False - ANSIBLE_FORCE_COLOR=True - UPDATE_ROLES=false network_mode: bridge deploy: resources: limits: memory: 1G cpus: '2.0' labels: - "com.centurylinklabs.watchtower.enable=false" restart: unless-stopped