# Ansible GUI using AWX
### What is Ansible AWX?
:::warning
Ansible Automation Platform (Formerly Ansible Tower) --> Ansible GUI with additional capabilities
Ansible AWX -> Open source project to emulate Ansible Tower (https://github.com/ansible/awx)
:::
## AWX Setup
### Install Docker
````go=1
sudo apt update
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu\
release -cs) stable"
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io
sudo usermod -aG docker $USER
sudo systemctl restart docker
docker version
````
### Install Docker Compose
````go=1
sudo apt-get update -y
sudo apt-get install docker-compose-plugin -y
docker-compose version
````
### Install Ansible
````go=1
sudo apt install -y ansible
ansible --version
````
### Install node and NPM (Node Package Manager)
````go=1
sudo apt install -y nodejs npm
sudo npm install npm --global
````
### Download AWX binaries and Unzip
````go=1
sudo apt install -y python3-pip git pwgen
sudo pip3 install docker-compose==1.28.5
wget https://github.com/ansible/awx/archive/17.1.0.zip
sudo apt install unzip
unzip 17.1.0.zip
cd awx-17.1.0/
cd installer/
````
### Generate a secret key and copy it for future use
````go=1
pwgen -N 1 -s 30
````
### Edit the inventory file
````yaml=1
vi inventory
Edit the following line:
admin_user=admin
admin_password=<Strong-Admin-password>
Edit the secret key generated using pwgen:
secret_key=wUfZ7CzhWipCuWhflBVX8N7M567ndB
````
### Run the playbook file to Install AWX
````yaml=1
ansible-playbook -i inventory install.yml
````
### Access AWX Dashboard
````yaml=1
http://server-ip-address
````
### References
:::warning
- https://www.redhat.com/en/interactive-labs/ansible
- https://redhatgov.io/workshops/ansible_automation/exercise2.0/
- https://github.com/ansible/awx
:::