[Unit] Description=Ceph Monitor After=docker.service [Service] EnvironmentFile=-/etc/environment ExecStartPre=-/usr/bin/docker rm %i ExecStartPre=/usr/bin/mkdir -p /etc/ceph /var/lib/ceph/mon ExecStart=/usr/bin/docker run --rm --name %i --net=host \ {% if not mon_containerized_deployment_with_kv -%} -v /var/lib/ceph:/var/lib/ceph \ -v /etc/ceph:/etc/ceph \ {% else -%} -e KV_TYPE={{kv_type}} \ -e KV_IP={{kv_endpoint}}\ -e KV_PORT={{kv_port}} \ {% endif -%} {% if mon_docker_privileged -%} --privileged \ {% endif -%} {% if mon_docker_net_host -%} --net=host \ {% endif -%} -e CEPH_DAEMON=MON \ -e MON_IP={{ hostvars[inventory_hostname]['ansible_' + ceph_mon_docker_interface]['ipv4']['address'] }} \ -e CEPH_PUBLIC_NETWORK={{ ceph_mon_docker_subnet }} \ -e MON_NAME={{ ansible_hostname }} \ {{ ceph_mon_docker_username }}/{{ ceph_mon_docker_imagename }}:{{ ceph_osd_docker_tag }} ExecStopPost=-/usr/bin/docker stop %i Restart=always RestartSec=10s TimeoutStartSec=120 TimeoutStopSec=15 [Install] WantedBy=multi-user.target