The best option to run the docker compose is to be in a WSL2 environment or directly on a linux ssytem. I couldn't test under MS Windows systems.
To install Docker Desktop on Windows:
To install WSL2 in Windows:
To integrate Docker Desktop with WSL2:
- Linux Fedora 42: successful
- MS Windows 11 + Docker Desktop 4.41.2 (191736) + WSL2: successful
git clone https://github.com/ebah80/lab_ansible.git
Downlaod MariaDB from here:
and copy in /ansible/files/
docker-compose up -d
docker exec -it ansible-orchestrator sh
apk add --no-cache curl
ansible all -i inventory/hosts.ini -m ping
ansible sshnode -i inventory/hosts.ini -m setup
ansible sshnode -i inventory/hosts.ini -m setup -a "filter=ansible_distribution*"
ansible -i inventory/hosts.ini all --list-hosts
ansible -i inventory/hosts.ini "barcelona:tokyo" --list-hosts
ansible -i inventory/hosts.ini "barcelona:&tokyo" --list-hosts
ansible -i inventory/hosts.ini --list "bar*" --list-hosts
ansible -i inventory/hosts.ini --list tokyo --list-hosts
ansible -i inventory/hosts.ini all -m ping --limit "demo"
ansible -i inventory/hosts.ini all -m ping --list-hosts
ansible -i inventory/hosts.ini all -m ping --limit "demo" --list-hosts
ansible-playbook 001_install_apache.yml -i inventory/hosts.ini --list-hosts
ansible-playbook 001_install_apache.yml -i inventory/hosts.ini --check
ansible-playbook 001_install_apache.yml -i inventory/hosts.ini
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' web*
Open IPs in browser:
or from the orchestrator run
sh ./scripts/curl.sh
ansible-playbook 002_welcome_page.yml -i inventory/hosts.ini
First of all download MariaDB tar.gz from here:
and place it under:
- /ansible/files
ansible-playbook 003_install_configure_mariadb.yml -i inventory/hosts.ini
Log into mariadb container and start MariaDB:
docker exec -it mariadb1 /bin/bash
run_mariadbd-11.4.4
-v
-vv
-vvv
https://galaxy.ansible.com/ui/repo/published/community/mysql/
ansible-galaxy collection list
ansible-galaxy collection install community.mysql
ls -l /usr/lib/python3.12/site-packages/ansible_collections/community/mysql/plugins/modules
ansib
6907
le-playbook 004_mariadb_create_db.yml -i inventory/hosts.ini
ansible-playbook 005_mariadb_create_users.yml -i inventory/hosts.ini
ansible-vault create db_passwords.yml
>> secretoiberico <<
vault_db_passwords:
rick: "secret-rick"
cat db_passwords.yml
ansible-vault view db_passwords.yml
ansible-vault edit db_passwords.yml
ansible-playbook 006_mariadb_create_users_vault.yml -i inventory/hosts.ini --ask-vault-pass
docker exec -it mariadb1 /bin/bash
/opt/mariadb/mariadb-11.4.4/bin/mariadb -u rick -p -S /var/lib/mariadb-11.4.4/mariadb.sock
>> secret-rick <<
docker-compose down -v