• Dockers wanting to update, but don't in the end?


    urbanracer34
    • Closed Minor

    So I appear to be having a problem with dockers, Specifically Linuxserver ones, but they said to me it is an unRAID issue and it is "not just us." I chatted with someone from Linuxserver in private and they said it is an issue with "Update all containers."

     

    The dockers will say there is an update ready, but when updated, it does not do anything.

     

    Tried manually updating a docker, same result. 

    gibson-diagnostics-20190829-1841.zip

    • Like 1



    User Feedback

    Recommended Comments



    2 hours ago, bonienl said:

    This issue results in many false positives, but still containers which have a true update, are updated.

    The -rc release of version 6.8 is imminent, just a little bit more patience 😊

     

    I guess I was meaning for those of us with servers in production :) and not wanting to go to release candidates.

     

    At least we'll have updated dockers every day :)

    Link to comment
    11 hours ago, ljm42 said:

    Thanks for the fix @bluemonster !

     

    Here is a bash file that will automatically implement the fix in 6.7.2 (and probably earlier, although I'm not sure how much earlier):
      https://gist.github.com/ljm42/74800562e59639f0fe1b8d9c317e07ab

     

    It is meant to be run using the User Scripts plugin, although that isn't required.

    Note that you need to re-run the script after every reboot.

    Remember to uninstall the script after you upgrade to Unraid 6.8

    More details in the script comments. 

    also thanks from here to @bluemonster for the fix and @ljm42 for the script

    Link to comment
    18 hours ago, bonienl said:

    This issue results in many false positives, but still containers which have a true update, are updated.

    The -rc release of version 6.8 is imminent, just a little bit more patience 😊

     

    how will one download the RC? will it be on the main download page?

     

    Link to comment
    21 hours ago, ljm42 said:

    Thanks for the fix @bluemonster !

     

    Here is a bash file that will automatically implement the fix in 6.7.2 (and probably earlier, although I'm not sure how much earlier):
      https://gist.github.com/ljm42/74800562e59639f0fe1b8d9c317e07ab

     

    It is meant to be run using the User Scripts plugin, although that isn't required.

    Note that you need to re-run the script after every reboot.

    Remember to uninstall the script after you upgrade to Unraid 6.8

    More details in the script comments. 

    Thanks @bluemonster and @ljm42

     

    That fix and User Script worked to fix my Unraid 6.7.2 Docker Update issue

    • Like 1
    Link to comment

    Well done on finding and fixing this guys.

     

    Moving forward - is it worth putting things like these outside of the full build (ie, into settings/config files)?  Having to push a new version because a third party rolls out tweaks sounds like a pain (although I dare say that a 6.7.3 could be rolled fairly swiftly were 6.8 not on the horizon).

     

    Edit: Probably not a practical thought.  Sod's law states that there will always be something hard-coded that needs changing, and you could have 100's of configs that are never altered.  I was just trying to think through permanent solutions where full OS updates aren't needed.

    Edited by Cessquill
    Thinking it through
    Link to comment

    Hi please may i have a little more help on this what command or where do i locate the file i need to update please thanks in advance 

    Link to comment

    @coblck You have to edit the DockerClient.php (/usr/local/emhttp/plugins/dynamix.docker.manager/include)

     

     

    change it like it's shown on the post I've linked you

     

    nano /usr/local/emhttp/plugins/dynamix.docker.manager/include/DockerClient.php

    Scroll down until you see "DOCKERUPDATE CLASS". Below it you should find "Step 4: Get Docker-Content-Digest header from manifest file" Change the following

     

    from

    'Accept: application/vnd.docker.distribution.manifest.v2+json',

    to

    'Accept: application/vnd.docker.distribution.manifest.list.v2+json,application/vnd.docker.distribution.manifest.v2+json',

    done.

     

    With a server restart that file will be reset. If you don't feel confident with editing a file, wait for the next Unraid update and ignore the docker update hints. If there is a real update for a docker container and you run the update, it will install.

    • Like 1
    • Thanks 1
    Link to comment

    You should never paste random code from the Internet into your computer without understanding what it does... but that aside, if you open up a terminal and paste in the following line:
     

    wget https://gist.githubusercontent.com/ljm42/74800562e59639f0fe1b8d9c317e07ab/raw/387caba4ddd08b78868ba5b0542068202057ee90/fix_docker_client -O /tmp/dockfix.sh; sh /tmp/dockfix.sh

    Then the fix should be applied until you reboot.

    • Like 2
    • Haha 1
    Link to comment
    11 minutes ago, coblck said:

    @Simon Thanks for this... i take it its safe. 

    It's just two commands. One to download @ljm42's shell script and another to run it. So really your're trusting @ljm42here 🙂

    Edited by Simon
    Link to comment
    11 hours ago, Simon said:

    You should never paste random code from the Internet into your computer without understanding what it does... but that aside, if you open up a terminal and paste in the following line:
     

    
    wget https://gist.githubusercontent.com/ljm42/74800562e59639f0fe1b8d9c317e07ab/raw/387caba4ddd08b78868ba5b0542068202057ee90/fix_docker_client -O /tmp/dockfix.sh; sh /tmp/dockfix.sh

    Then the fix should be applied until you reboot.

     

    Thanks Player

    Link to comment
    On 8/31/2019 at 9:02 PM, dalben said:

    I made the change suggested above and my containers are now updating as expected.  Thanks

     

     

    This worked for me as well, thanks.

    Link to comment

    The fix suggested by bluemonster appears to invert the selection of which dockers always show update ready. For instance, prior to the edit, on my system duckdns (LSIO) and pihole always showed update ready whereas binhex-delugevpn and PlexMediaServer (plexinc) showed up-to-date. After I made the edit, binhex-delugevpn and PlexMediaServer show update ready while the other two are up-to-date.

     

    Seems like some containers require the 'list' keyword to get the right info and other containers don't.

     

    Link to comment



    Join the conversation

    You can post now and register later. If you have an account, sign in now to post with your account.
    Note: Your post will require moderator approval before it will be visible.

    Guest
    Add a comment...

    ×   Pasted as rich text.   Restore formatting

      Only 75 emoji are allowed.

    ×   Your link has been automatically embedded.   Display as a link instead

    ×   Your previous content has been restored.   Clear editor

    ×   You cannot paste images directly. Upload or insert images from URL.


  • Status Definitions

     

    Open = Under consideration.

     

    Solved = The issue has been resolved.

     

    Solved version = The issue has been resolved in the indicated release version.

     

    Closed = Feedback or opinion better posted on our forum for discussion. Also for reports we cannot reproduce or need more information. In this case just add a comment and we will review it again.

     

    Retest = Please retest in latest release.


    Priority Definitions

     

    Minor = Something not working correctly.

     

    Urgent = Server crash, data loss, or other showstopper.

     

    Annoyance = Doesn't affect functionality but should be fixed.

     

    Other = Announcement or other non-issue.