# Ansible-WordPress-Nginx-Docker This Ansible project automates the setup and configuration of an Ubuntu machine to host a WordPress website using Nginx, PHP, Docker, MySQL, and Redis. ## Features The Ansible playbook in this project will: 1. Update Ubuntu packages 2. Install Nginx 3. Configure Nginx 4. Install PHP 5. Configure PHP 6. Install WordPress 7. Install Docker 8. Deploy MySQL and Redis containers ## Prerequisites - Ansible (version 2.9+) - Ubuntu 18.04+ target machine - SSH access to the target machine ## Getting Started Clone this repository to your local machine: ```bash git clone https://github.com/your-username/ansible-wordpress-nginx-docker.git cd ansible-wordpress-nginx-docker ``` Update the `inventory/target.ini` file with the correct information for your target Ubuntu machine: ```ini [main] your-server-ip ansible_ssh_user=your-username ansible_ssh_port=port ansible_ssh_private_key_file=path/to/your/private/key ``` Run the playbook: ```bash ansible-playbook -i inventory/target.ini setup_server.yml ``` After the playbook has run successfully, you should have a fully functional WordPress website running on your Ubuntu machine with Nginx, PHP, MySQL, and Redis. ## Variables The following variables can be customized in the `vars/external.yml` file: ```yaml php_version: PHPversion vhost_name: name of the vhost domain: thedomain.com mysql_mem_limit: 1024 //MB mysql_mem_reserve: 512 //MB mysql_root_pass: evenmoresecurepwd mysql_db: projectname mysql_user: projectname mysql_user_pass: verysecurepwd redis_pass: ultimatepassword ``` Make sure to replace the default values with your own.