Docker image for Ansible Tower.
This image provides easy deployment of an Ansible Tower server in a Docker environment and can be used for product testing (license required).
Create docker-compose.yml
file as following:
version: '3'
volumes:
tower_data:
tower_projects:
services:
database:
image: postgres:10-alpine
volumes:
- tower_data:/var/lib/postgresql/data
environment:
- "POSTGRES_DB=tower"
- "POSTGRES_USER=tower"
- "POSTGRES_PASSWORD=tower"
server:
image: upshift/ansible-tower:latest
privileged: true
depends_on:
- database
ports:
- "8080:80"
- "8443:443"
volumes:
- tower_projects:/var/lib/awx/projects
environment:
- "ANSIBLE_TOWER_ADMIN_PASSWORD=password"
- "ANSIBLE_TOWER_PG_HOST=database"
- "ANSIBLE_TOWER_PG_PORT=5432"
- "ANSIBLE_TOWER_PG_DATABASE=tower"
- "ANSIBLE_TOWER_PG_USERNAME=tower"
- "ANSIBLE_TOWER_PG_PASSWORD=tower"
Then run all services docker-compose up -d
. Wait until initialization is complete and go to http://localhost/ to access the Tower web ui.
To make your data persistent to upgrading, you should mount named docker volumes or host folders.
Tower server:
/var/lib/awx/projects/
ansible projects storage directory/var/lib/awx/job_status/
job outputs directory/var/log/tower/
Ansible Tower logs directory
Database server:
/var/lib/postgresql/data/
PostgreSQL database files
This image supports customization via environment variables.
Default value: admin
Administrator user name.
Default value: redhat
Administrator password.
Default value: [email protected]
Administrator email.
Default value: db
PostgreSQL database server host name.
Default value: 5432
PostgreSQL database server port.
Default value: tower
PostgreSQL database name.
Default value: tower
PostgreSQL database username.
Default value: tower
Internal rabbitmq server username.
Default value: tower
Internal rabbitmq user password.
Default value: tower
Internal rabbitmq erlang cookie.
Default value: no
Initialize database with sample data.
Default value: no
Disable SSL configuration when Tower is behind a reverse proxy.
Default value: no
Disable web ui translations, force using english regardless of accept-language sent by the browser.