GNU/Linux >> Linux の 問題 >  >> Linux

Ubuntu 16.04 で Docker サービスを開始できない

さて、ついに修正しました

別のストレージ ドライバをロードするだけです 私の場合は overlay を使用します :

<オール>
  • Docker サービスを無効にする :sudo systemctl stop docker.service
  • Docker デーモンを起動 (overlay ドライバー):sudo docker daemon -s overlay
  • デモ コンテナの実行 :sudo docker run hello-world
  • これらの変更を永続的にするには、/etc/default/docker を編集する必要があります ファイルに次のオプションを追加します:

    DOCKER_OPTS="-s overlay"

    次回 Docker サービス 読み込まれると、docker daemon -s overlay が実行されます


    次のマスキング解除コマンドが機能しました(Ubuntu 18)。それが誰かを助けることを願っています... :-)

    sudo systemctl unmask docker.service
    sudo systemctl unmask docker.socket
    sudo systemctl start docker.service
    

    更新

    docker と Ubuntu の新しいバージョンでは、docker のユニット ファイルが単純にマスクされているようです (/dev/null を指しています)。
    ターミナルで次のコマンドを実行して確認できます:

    sudo file /lib/systemd/system/docker.service
    sudo file /lib/systemd/system/docker.socket
    

    ユニット ファイルが /dev/null にシンボリック リンクされていることがわかります。
    この場合、S34N の提案に従って実行するだけです:

    sudo systemctl unmask docker.service
    sudo systemctl unmask docker.socket
    sudo systemctl start docker.service
    sudo systemctl status docker
    

    また、ストレージ ドライバーを交換する必要があることを示すエラー ログに回答する元の投稿も保持します。

    元の投稿

    私は同じ問題を抱えていました.Salva Cortの提案で修正しようとしましたが、/etc/default/dockerを印刷しました. 言います:

    <ブロック引用>

    # このファイルは SYSTEMD には適用されません

    そこで、systemd (Ubuntu 15.04 以降) で機能する恒久的な修正を次に示します。

    <オール>
  • 新しいファイル /etc/systemd/system/docker.service.d/overlay.conf を作成します 次の内容で:

    [Service]
    ExecStart=
    ExecStart=/usr/bin/docker daemon -H fd:// -s overlay
    
  • 次を実行して変更をフラッシュします:

    sudo systemctl daemon-reload
    
  • 構成がロードされていることを確認してください:

    systemctl show --property=ExecStart docker
    
  • ドッカーを再起動します:

    sudo systemctl restart docker
    

  • docker-machine 経由で docker を 17.05-ce から 17.06-ce にアップグレードした後、同じ問題が発生しました

    <オール>
  • /etc/systemd/system/docker.service.d/10-machine.conf を更新

    置き換える

    `docker daemon` => `dockerd`
    

    からの例

    [Service]
    ExecStart=
    ExecStart=/usr/bin/docker deamon -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --storage-driver aufs --tlsverify --tlscacert /etc/docker/ca.pem --tlscert /etc/docker/server.pem --tlskey /etc/docker/server-key.pem --label provider=generic
    Environment=
    

    [Service]
    ExecStart=
    ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2376 -H unix:///var/run/docker.sock --storage-driver aufs --tlsverify --tlscacert /etc/docker/ca.pem --tlscert /etc/docker/server.pem --tlskey /etc/docker/server-key.pem --label provider=generic
    Environment=
    
  • 次を実行して変更をフラッシュします:

    sudo systemctl daemon-reload
    
  • ドッカーを再起動します:

    sudo systemctl restart docker
    

  • Linux
    1. DockerをDebian/Ubuntuにインストールする方法

    2. Docker

    3. Ubuntu20.04にIcinga2をインストールする方法

    1. Ubuntu 22.04 に Docker をインストールする方法

    2. CentOS / RHEL 7:vsftpd サービスを開始できません

    3. Ubuntu:OpenJDK 8 - パッケージが見つかりません

    1. Ubuntu16.04にDockerをインストールする方法

    2. Ubuntu 20.04でのDockerの問題?

    3. Ubuntu で uiautomatorviewer を起動できません