Articles in this section

Docker service does not start on a Plesk server: error initializing graphdriver

kb: bug Plesk for Linux kb: technical

Symptoms

  • While trying to access the Docker extension the following warning is displayed:

    Local Docker node is missing. Refer to this KB article to resolve this issue.
    The ability to work with remote nodes is available only in the paid version of the extension. You can buy the extension here.

  • The following error is seen in Docker logs or /var/log/messages:

    dockerd: failed to start daemon: error initializing graphdriver: prior storage driver devicemapper is deprecated and will be removed in a future release; update the the daemon configuration and explicitly choose this storage driver to continue using it; visit https://docs.docker.com/go/storage-driver/ for more information


    dockerd: failed to start daemon: error initializing graphdriver: overlay: the backing xfs filesystem is formatted without d_type support, which leads to incorrect behavior. Reformat the filesystem with ftype=1 to enable d_type support. Backing filesystems without d_type support are not supported.

  • The Docker version installed on the server is 23:

    # rpm -qa | grep -i docker
    docker-compose-plugin-2.15.1-3.el7.x86_64
    docker-ce-cli-23.0.0-1.el7.x86_64
    ...

Cause

Note: When using Docker extension for Plesk, standard Docker packages are installed. Only graphical interface for configuration is provided by Plesk.

In Docker engine 23.0, changes were made in regards to storage drivers:

  • The devicemapper storage driver is deprecated in favor of overlay2, and will be removed in a future release. Users of the devicemapper storage driver are recommended to migrate to a different storage driver, such as overlay2, which is now the default storage driver.
  • Deprecated support for overlay and overlay2 storage drivers on backing filesystems without d_type support was removed.
Plesk RnD has created a research task EXTDOCKER-163 to look for a workaround we can do on our side. Due to the issue nature the probability is low.

Resolution

Create a server snapshot and format xfs filesystem with d_type support to take advantage of the now-default overlay2 storage driver.

As a workaround, temporarily switch to devicemapper storage driver.

Warning: The below steps will only make service start, but the extension will still be inaccessible with the same warning unless containers are migrated, which is not supported, and we have no instructions on how to do it. An accessible solution would be recreating and reconfiguring containers anew after the service is started.

Workaround:

Warning: The devicemapper storage driver is deprecated in favor of overlay2, and will be removed in a future release. Users of the devicemapper storage driver are recommended to migrate to a different storage driver, such as overlay2, which is now the default storage driver.

Apply the steps from the Docker documentation:

  1. Connect to the server via SSH

  2. Create /etc/docker/daemon.json file with the following content:

    {
    "storage-driver": "devicemapper"
    }

  3. Start Docker service:

    # systemctl start docker

 

Was this article helpful?

Comments

0 comments

Please sign in to leave a comment.