2016-01-09 09:45:50 +00:00
|
|
|
[Unit]
|
|
|
|
Description=Docker Application Container Engine
|
|
|
|
Documentation=http://docs.docker.com
|
|
|
|
{% if ansible_os_family == "RedHat" %}
|
2016-08-02 08:55:42 +00:00
|
|
|
After=network.target docker-storage-setup.service
|
2016-01-09 09:45:50 +00:00
|
|
|
Wants=docker-storage-setup.service
|
|
|
|
{% elif ansible_os_family == "Debian" %}
|
|
|
|
After=network.target docker.socket
|
2016-08-02 08:55:42 +00:00
|
|
|
Wants=docker.socket
|
2016-01-09 09:45:50 +00:00
|
|
|
{% endif %}
|
|
|
|
|
|
|
|
[Service]
|
|
|
|
Type=notify
|
2016-12-07 16:18:41 +00:00
|
|
|
{% if docker_storage_options is defined %}
|
2016-12-09 12:56:51 +00:00
|
|
|
Environment="DOCKER_STORAGE_OPTIONS={{ docker_storage_options }}"
|
2016-12-07 16:18:41 +00:00
|
|
|
{% endif %}
|
2016-01-09 09:45:50 +00:00
|
|
|
Environment=GOTRACEBACK=crash
|
2016-08-02 08:55:42 +00:00
|
|
|
ExecReload=/bin/kill -s HUP $MAINPID
|
|
|
|
Delegate=yes
|
|
|
|
KillMode=process
|
2017-12-19 14:47:54 +00:00
|
|
|
ExecStart={{ docker_bin_dir }}/docker{% if installed_docker_version.stdout|version_compare('17.03', '<') %} daemon{% else %}d{% endif %} \
|
2016-11-04 21:40:14 +00:00
|
|
|
$DOCKER_OPTS \
|
2016-01-09 09:45:50 +00:00
|
|
|
$DOCKER_STORAGE_OPTIONS \
|
|
|
|
$DOCKER_NETWORK_OPTIONS \
|
2016-12-21 16:18:11 +00:00
|
|
|
$DOCKER_DNS_OPTIONS \
|
2016-11-04 21:40:14 +00:00
|
|
|
$INSECURE_REGISTRY
|
2018-02-21 16:26:18 +00:00
|
|
|
{% if not is_atomic and systemd_version.stdout|int >= 226 %}
|
2016-08-02 10:42:27 +00:00
|
|
|
TasksMax=infinity
|
2017-08-09 22:49:53 +00:00
|
|
|
{% endif %}
|
2016-01-09 09:45:50 +00:00
|
|
|
LimitNOFILE=1048576
|
|
|
|
LimitNPROC=1048576
|
|
|
|
LimitCORE=infinity
|
|
|
|
TimeoutStartSec=1min
|
2018-03-07 10:36:39 +00:00
|
|
|
# restart the docker process if it exits prematurely
|
|
|
|
Restart=on-failure
|
|
|
|
StartLimitBurst=3
|
|
|
|
StartLimitInterval=60s
|
2016-01-09 09:45:50 +00:00
|
|
|
|
|
|
|
[Install]
|
|
|
|
WantedBy=multi-user.target
|