1
0
mirror of https://github.com/ansible/awx.git synced 2024-11-01 16:51:11 +03:00
awx/installer/roles/local_docker/templates/docker-compose.yml.j2

132 lines
4.7 KiB
Plaintext
Raw Normal View History

#jinja2: lstrip_blocks: True
version: '2'
services:
web:
image: {{ awx_web_docker_actual_image }}
container_name: awx_web
depends_on:
- rabbitmq
- memcached
{% if pg_hostname is not defined %}
- postgres
{% endif %}
ports:
- "{{ host_port }}:8052"
hostname: {{ awx_web_hostname }}
user: root
restart: unless-stopped
volumes:
- "{{ docker_compose_dir }}/SECRET_KEY:/etc/tower/SECRET_KEY"
- "{{ docker_compose_dir }}/environment.sh:/etc/tower/conf.d/environment.sh"
- "{{ docker_compose_dir }}/credentials.py:/etc/tower/conf.d/credentials.py"
{% if project_data_dir is defined %}
- "{{ project_data_dir +':/var/lib/awx/projects:rw' }}"
{% endif %}
{% if ca_trust_dir is defined %}
2018-04-02 21:23:23 +03:00
- "{{ ca_trust_dir +':/etc/pki/ca-trust/source/anchors:ro' }}"
{% endif %}
{% if ssl_certificate is defined %}
- "{{ ssl_certificate +':/etc/nginx/awxweb.pem:ro' }}"
{% endif %}
{% if (awx_container_search_domains is defined) and (',' in awx_container_search_domains) %}
{% set awx_container_search_domains_list = awx_container_search_domains.split(',') %}
dns_search:
{% for awx_container_search_domain in awx_container_search_domains_list %}
- {{ awx_container_search_domain }}
{% endfor %}
{% elif awx_container_search_domains is defined %}
dns_search: "{{ awx_container_search_domains }}"
{% endif %}
{% if (awx_alternate_dns_servers is defined) and (',' in awx_alternate_dns_servers) %}
{% set awx_alternate_dns_servers_list = awx_alternate_dns_servers.split(',') %}
dns:
{% for awx_alternate_dns_server in awx_alternate_dns_servers_list %}
- {{ awx_alternate_dns_server }}
{% endfor %}
{% elif awx_alternate_dns_servers is defined %}
dns: "{{ awx_alternate_dns_servers }}"
{% endif %}
environment:
http_proxy: {{ http_proxy | default('') }}
https_proxy: {{ https_proxy | default('') }}
no_proxy: {{ no_proxy | default('') }}
task:
image: {{ awx_task_docker_actual_image }}
container_name: awx_task
depends_on:
- rabbitmq
- memcached
- web
{% if pg_hostname is not defined %}
- postgres
{% endif %}
hostname: {{ awx_task_hostname }}
user: root
restart: unless-stopped
volumes:
- "{{ docker_compose_dir }}/SECRET_KEY:/etc/tower/SECRET_KEY"
- "{{ docker_compose_dir }}/environment.sh:/etc/tower/conf.d/environment.sh"
- "{{ docker_compose_dir }}/credentials.py:/etc/tower/conf.d/credentials.py"
2018-03-14 13:41:10 +03:00
{% if project_data_dir is defined %}
- "{{ project_data_dir +':/var/lib/awx/projects:rw' }}"
{% endif %}
2018-03-14 13:41:10 +03:00
{% if ca_trust_dir is defined %}
2018-04-02 21:23:23 +03:00
- "{{ ca_trust_dir +':/etc/pki/ca-trust/source/anchors:ro' }}"
2018-03-14 13:41:10 +03:00
{% endif %}
{% if ssl_certificate is defined %}
- "{{ ssl_certificate +':/etc/nginx/awxweb.pem:ro' }}"
{% endif %}
{% if (awx_container_search_domains is defined) and (',' in awx_container_search_domains) %}
{% set awx_container_search_domains_list = awx_container_search_domains.split(',') %}
dns_search:
{% for awx_container_search_domain in awx_container_search_domains_list %}
- {{ awx_container_search_domain }}
{% endfor %}
{% elif awx_container_search_domains is defined %}
dns_search: "{{ awx_container_search_domains }}"
{% endif %}
{% if (awx_alternate_dns_servers is defined) and (',' in awx_alternate_dns_servers) %}
{% set awx_alternate_dns_servers_list = awx_alternate_dns_servers.split(',') %}
dns:
{% for awx_alternate_dns_server in awx_alternate_dns_servers_list %}
- {{ awx_alternate_dns_server }}
{% endfor %}
{% elif awx_alternate_dns_servers is defined %}
2018-01-22 00:14:06 +03:00
dns: "{{ awx_alternate_dns_servers }}"
{% endif %}
environment:
http_proxy: {{ http_proxy | default('') }}
https_proxy: {{ https_proxy | default('') }}
no_proxy: {{ no_proxy | default('') }}
rabbitmq:
image: {{ rabbitmq_image }}
container_name: awx_rabbitmq
restart: unless-stopped
environment:
RABBITMQ_DEFAULT_VHOST: "{{ rabbitmq_default_vhost }}"
RABBITMQ_DEFAULT_USER: "{{ rabbitmq_user }}"
RABBITMQ_DEFAULT_PASS: "{{ rabbitmq_password }}"
RABBITMQ_ERLANG_COOKIE: {{ rabbitmq_erlang_cookie }}
memcached:
image: memcached:alpine
container_name: awx_memcached
restart: unless-stopped
{% if pg_hostname is not defined %}
postgres:
image: postgres:9.6
container_name: awx_postgres
restart: unless-stopped
volumes:
- {{ postgres_data_dir }}:/var/lib/postgresql/data:Z
environment:
POSTGRES_USER: {{ pg_username }}
POSTGRES_PASSWORD: {{ pg_password }}
POSTGRES_DB: {{ pg_database }}
PGDATA: /var/lib/postgresql/data/pgdata
{% endif %}