diff --git a/defaults/main.yml b/defaults/main.yml index 59a0158..46ab982 100644 --- a/defaults/main.yml +++ b/defaults/main.yml @@ -12,6 +12,7 @@ haproxy_docker_container: False haproxy_docker_version: '{{ haproxy_version }}.6' haproxy_docker_image: 'haproxytech/haproxy-debian:{{ haproxy_docker_version }}' haproxy_docker_compose_dir: /srv/haproxy_swarm +haproxy_docker_mount_conf_file: False # Source volume for the socket haproxy_docker_socket_dir: /srv/haproxy_s haproxy_docker_restart_policy: 'on-failure' diff --git a/templates/haproxy-docker-stack.yml.j2 b/templates/haproxy-docker-stack.yml.j2 index 78a9d6e..f1989d4 100644 --- a/templates/haproxy-docker-stack.yml.j2 +++ b/templates/haproxy-docker-stack.yml.j2 @@ -4,15 +4,29 @@ networks: {{ haproxy_docker_overlay_network }}: external: true +{% if not haproxy_docker_mount_conf_file %} +configs: + haproxy_conf: + file: /etc/haproxy/haproxy.cfg +{% endif %} + services: haproxy: image: {{ haproxy_docker_image }} entrypoint: ["haproxy", "-sf", "350", "-x", "{{ haproxy_admin_socket }}", "-W", "-db", "-f", "/usr/local/etc/haproxy/haproxy.cfg", "-L", "local_haproxy"] volumes: - {{ haproxy_cert_dir }}:{{ haproxy_cert_dir }}:ro - - /etc/haproxy:/usr/local/etc/haproxy:ro - /var/run/docker.sock:/var/run/docker.sock - {{ haproxy_docker_socket_dir }}:{{ haproxy_admin_socket_dir }} +{% if haproxy_docker_mount_conf_file %} + - /etc/haproxy:/usr/local/etc/haproxy:ro +{% endif %} +{% if not haproxy_docker_mount_conf_file %} + configs: + - source: haproxy_conf + target: /usr/local/etc/haproxy/haproxy.cfg + mode: 0444 +{% endif %} networks: - {{ haproxy_docker_overlay_network }} ports: