diff --git a/installer/inventory b/installer/inventory index c181516ae4..36d4452655 100644 --- a/installer/inventory +++ b/installer/inventory @@ -95,3 +95,9 @@ pg_port=5432 # AWX project data folder. If you need access to the location where AWX stores the projects # it manages from the docker host, you can set this to turn it into a volume for the container. #project_data_dir=/var/lib/awx/projects + +# CA Trust directory. If you need to provide custom CA certificates, supplying +# this variable causes this directory on the host to be bind mounted over +# /etc/pki/ca-trust in the awx_task and awx_web containers. +# NOTE: only obeyed in local_docker install +#ca_trust_dir=/etc/pki/ca-trust diff --git a/installer/local_docker/tasks/standalone.yml b/installer/local_docker/tasks/standalone.yml index ac23f74e66..3e377157d5 100644 --- a/installer/local_docker/tasks/standalone.yml +++ b/installer/local_docker/tasks/standalone.yml @@ -79,7 +79,11 @@ state: started restart_policy: unless-stopped image: "{{ awx_web_docker_actual_image }}" - volumes: "{{ project_data_dir + ':/var/lib/awx/projects:rw' if project_data_dir is defined else omit }}" + volumes: > + {{ + [project_data_dir + ':/var/lib/awx/projects:rw'] if project_data_dir is defined else [] + + [ca_trust_dir + ':/etc/pki/ca-trust:ro'] if ca_trust_dir is defined else [] + }} user: root ports: - "{{ host_port }}:8052" @@ -113,7 +117,11 @@ state: started restart_policy: unless-stopped image: "{{ awx_task_docker_actual_image }}" - volumes: "{{ project_data_dir + ':/var/lib/awx/projects:rw' if project_data_dir is defined else omit }}" + volumes: > + {{ + [project_data_dir + ':/var/lib/awx/projects:rw'] if project_data_dir is defined else [] + + [ca_trust_dir + ':/etc/pki/ca-trust:ro'] if ca_trust_dir is defined else [] + }} links: "{{ awx_task_container_links|list }}" user: root hostname: awx diff --git a/installer/local_docker/templates/docker-compose.yml.j2 b/installer/local_docker/templates/docker-compose.yml.j2 index 4535937477..ab9d79b0b7 100644 --- a/installer/local_docker/templates/docker-compose.yml.j2 +++ b/installer/local_docker/templates/docker-compose.yml.j2 @@ -15,10 +15,15 @@ services: hostname: awxweb user: root restart: unless-stopped - {% if project_data_dir is defined %} + {% if (project_data_dir is defined) or (ca_trust_dir is defined) %} volumes: + {% endif %} + {% if project_data_dir is defined %} - "{{ project_data_dir +':/var/lib/awx/projects:rw' }}" {% endif %} + {% if ca_trust_dir is defined %} + - "{{ ca_trust_dir +':/etc/pki/ca-trust: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: @@ -69,10 +74,15 @@ services: hostname: awx user: root restart: unless-stopped - {% if project_data_dir is defined %} + {% if (project_data_dir is defined) or (ca_trust_dir is defined) %} volumes: + {% endif %} + {% if project_data_dir is defined %} - "{{ project_data_dir +':/var/lib/awx/projects:rw' }}" {% endif %} + {% if ca_trust_dir is defined %} + - "{{ ca_trust_dir +':/etc/pki/ca-trust: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: