Docker Awx



The Ansible community team has announced the release of Ansible 3.0.0 and here are the questions about the release that we’ve heard from community members so far. If you have a question that is not answered below, let us know on the mailing lists or IRC. The '/var/lib/awx/projects' directory is the default project directory for your Ansible playbooks if you're using the AWX docker version with the 'projectdatadir' enabled. Step 5 - Create New Job Templates. Docker is a free and open source tool designed to build, deploy, and run applications inside containers. Host on which docker is installed is known Read More » How to Install and Use Docker on Ubuntu 20.04 / 20.10.

Ansible Tower (formerly ‘AWX’) is a web-based solution that makes Ansible even more easy to use for IT teams of all kinds. It’s designed to be the hub for all of your automation tasks.

Tower allows you to control access to who can access what, even allowing sharing of SSH credentials without someone being able to transfer those credentials. Inventory can be graphically managed or synced with a wide variety of cloud sources. It logs all of your jobs, integrates well with LDAP, and has an amazing browsable REST API. Command line tools are available for easy integration with Jenkins as well. Provisioning callbacks provide great support for autoscaling topologies.

AWX provides a web-based user interface, REST API, and task engine built on top of Ansible. It is the upstream project for Tower, a commercial derivative of AWX.

Prerequisites

Before you can run a deployment, you’ll need the following installed in your local environment:

  • Ansible Requires Version 2.8+
  • Docker
    • A recent version
  • docker Python module
    • This is incompatible with docker-py. If you have previously installed docker-py, please uninstall it.
    • We use this module instead of docker-py because it is what the docker-compose Python module requires.
  • Git Requires Version 1.8.4+
  • Python 3.6+
  • Node 10.x LTS version
    • This is only required if you’re building your own container images with use_container_for_build=false
  • NPM 6.x LTS
    • This is only required if you’re building your own container images with use_container_for_build=false

System Requirements

The system that runs the AWX service will need to satisfy the following requirements

  • At least 4GB of memory
  • At least 2 cpu cores
  • At least 20GB of space
  • Running Docker, Openshift, or Kubernetes
  • If you choose to use an external PostgreSQL database, please note that the minimum version is 10+.

Installation steps:

1. Install Dependencies

Docker awx logs

yum install -y epel-release

yum remove python-docker-py

yum install -y yum-utils device-mapper-persistent-data lvm2 ansible git python-devel python-pip python-docker-py vim-enhanced

pip install cryptography
pip install jsonschema
pip install docker-compose~=1.23.0
pip install docker –upgrade

2. Install docker

Configure docker ce stable repository.

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

Installing docker.

Docker Awx Upgrade

yum install docker-ce -y

Start docker service.

systemctl start docker

Enable docker service.

systemctl enable docker

3. Deploy AWX

Start

Clone AWX repo

Docker Awx Start

git clone https://github.com/ansible/awx.git

Clone commercial logos

cd awx/

git clone https://github.com/ansible/awx-logos.git

Configure AWX

cd installer/

$ vim inventory

awx_official=true

Deploy AWX

ansible-playbook -i inventory install.yml -vv

Check the status

docker ps -a

Awx_task

AWX is ready and can be accessed from the browser.

Awx

http://ipaddress:80/

the default username is “admin” and the password is “password”.

Final checks:

Docker Awx

  1. verify whether the service is started or not with ss -tlnp | grep 80
  2. make sure your firewall is open for port 80
  3. make sure your OS is using python 3.6+ and pip3
Docker Awx

https://github.com/ansible/awx/blob/devel/INSTALL.md