diff --git a/admin/freeposte/admin/templates/docker-error.html b/admin/freeposte/admin/templates/docker-error.html new file mode 100644 index 00000000..2038c0a0 --- /dev/null +++ b/admin/freeposte/admin/templates/docker-error.html @@ -0,0 +1,14 @@ +{% extends "base.html" %} + +{% block title %} +{% trans %}Docker error{% endtrans %} +{% endblock %} + +{% block subtitle %} +{{ action }} +{% endblock %} + +{% block box_content %} +
{% trans action %}An error occurred while talking to the Docker server.{% endtrans %}
+{{ error }}+{% endblock %} diff --git a/admin/freeposte/admin/views/base.py b/admin/freeposte/admin/views/base.py index d2e1ef8a..de51452c 100644 --- a/admin/freeposte/admin/views/base.py +++ b/admin/freeposte/admin/views/base.py @@ -35,7 +35,11 @@ def logout(): @access.global_admin def services(): containers = {} - for brief in dockercli.containers(all=True): + try: + all_containers = dockercli.containers(all=True) + except Exception as error: + return flask.render_template('docker-error.html', error=error) + for brief in all_containers: if brief['Image'].startswith('freeposte/'): container = dockercli.inspect_container(brief['Id']) container['Image'] = dockercli.inspect_image(container['Image']) diff --git a/admin/freeposte/translations/en/LC_MESSAGES/messages.po b/admin/freeposte/translations/en/LC_MESSAGES/messages.po index b0eeb6c1..8e41d456 100644 --- a/admin/freeposte/translations/en/LC_MESSAGES/messages.po +++ b/admin/freeposte/translations/en/LC_MESSAGES/messages.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: PROJECT VERSION\n" "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n" -"POT-Creation-Date: 2016-10-02 17:33+0200\n" +"POT-Creation-Date: 2016-10-13 09:28+0200\n" "PO-Revision-Date: 2016-10-02 15:02+0200\n" "Last-Translator: FULL NAME