• Docker templates revert when docker checks for update.


    CIA
    • Closed Minor

    I've noticed this over the last few weeks, but decide to investigate what was causing it today.

    So they revert in a way where the original enviroment variables return if removed and the custom enviroment varibales are still there.

    There's the duplicate container description too... have not checked what that's about.


    This is the vaultwarden docker, the 3 bottom variables are not needed when the docker is managed by a database, and causes warnings in the logs, so I delete the enviroment variables.

     

     

    vaultwarden.png

     

    There's other use cases that dockers wont start in certain setups... when a enviroment variable is used... so having the template be modified by an outside source seems uninteded, In some cases the original template can never match the exact users use case...

     

    This also brings to light that I've noticed that "Fix Common Issues" plugin has a check to see if the docker template matches the original...

    As much as this may seem to be helpful for new users, it just seems unnecessary. when you can delete the docker and remove the template and reinstall which would pull the current template anyway...

     

    The template that the user modifies should never be change once the docker is installed accept for when the user modifies it from the GUI or Flash drive, or deletes it...




    User Feedback

    Recommended Comments

    Got similar problem yesterday when update docker, but only pihole docker have such problem, OS still 6.10rc2 no change.

    Link to comment

    has stung me many a time, I thought I was going nuts for a while... deleted fields will return on docker update or if author updates template (I think those were the scenarios).

     

    Workaround: edit the template XML and delete the <TemplateURL> field or set to false

     <TemplateURL>false</TemplateURL>

     

    Make sure to ignore FCP if it asks you to add a missing URL from template, or it will be readded.

     

     

    • Thanks 1
    Link to comment

    Ok, I'll try that, but it's still just a work around...

     

    Both:

    template being altered without user permission... and

    FCP plugin should not be telling you that the template doesn't match... dosn't match because my template is going to be different, I may have a more complex setup than everyone else... you can't add every enviroment variable to the template... well you could but it would look insane... I'd rather just use docker compose.

    Link to comment

    The automatic updating of templates has been in the OS since 6.0 beta, and is not a defect.  The point of it is that if an update comes down that requires new ports, variables etc that they get added in to the template with the update.  (I've always had mixed feelings about it, and it would only have happened during a container update which never happens without user input one way or another.

     

    The reason why you're seeing the FCP warning is because you've created a template that uses the same repository as something already within CA rather than installing and editing the existing template.  Nothing wrong with that.  FCP introduced that test because 80% of the maintainers either never filled out the URL or filled it out wrong.  For the last few years, CA has automatically filled it out for everything present and ignores whatever the author chooses to put in there, and FCP by it's own nature is supposed to tell you about configuration mistakes etc and that test falls into it.  FCP never actually changes anything... (But this test it does offer to change it because it was always a pain to have the user enter in the correct value)

     

    The "workaround" is actually a by design thing.  false signals to both the update system to not update the template, and signals to FCP to not generate any warning about wrong URLs and gives the user the option to avoid behaviour if they choose.

    Link to comment

    I never had this behaviour before moving to 6.10.RC2... ?

     

    I assign IPs to every docker, so ports don't matter to me I always remove them.

    If an update ever came with new variable/change it would have to be set by a user... that user should be checking anyway.

     

    So I'd rather the docker break... and have me check why than it setting something that would break multiple dockers.

    Example if my MySQL docker goes down.. 10 other dockers fail.

    I personally don't allow automatic updates, this way I can micro manage any docker changes.

     

    It's not happening during docker update, it's happening during the docker check for update... the update only sets the change.

     

    Example docker is set to check 4 times a day which changes the template (restarts are fine) but then the backup plugin turns docker off... backups then turns it on... docker is now bricked.

     

    FCP part I understood... don't mind it... what I'd like to see though is a more toggleable interface for FCP so I can refine what Fixes that I'd like to see... Every user has their strengths and weaknesses I understand you're trying to cater to everyone. Maybe adding the link to the Github or authors page also... so user can check enviroment variable changes.

     

    Again, my main concern was the template being changed I only added FCP too cause it gave a false negative about the template.

    Link to comment
    17 hours ago, CIA said:

    I never had this behaviour before moving to 6.10.RC2... ?

    As @Squid said this was also the case before 6.10.0 RC2 it may be possible that the maintainer from the container changed the template entirely and now your template changes constantly because your "older" template doesn't match the "new" template in his repository.

    Link to comment

    @ich777 I did switch to 6.10.RC2 in line with the docker updating... But 5+ years with unraid I can't recall ever seeing my templates changing...

     

    @Squid Ok, cause I had to create a script that ran just after the appdata backup to revert the template as this caused the docker not to spin backup after the backup.

     

    Edited by CIA
    Link to comment

    They always were updating.  Except on testing, the changes never actually got applied unless you wound up editing the container (ie: you would never even notice the update happening)

     

    This change isn't set in stone.  I'm seeing which is the worst of 2 evils -> updating the templates or not updating when the author makes a change.

    Link to comment

    As a developer of multiple Docker containers, I find this template update mechanism very useful.

     

    Compared to Synology or QNAP, the beauty of unRAID is how easy is to install, use and update containers.  From experience, I know that a lot of users have little Docker related knowledge.  They want to install and use a Docker container like an application.  They don't want to micro-manage them and they certainly don't want them to break after an update (which for sure will trigger a support request).  Automatic update of templates allows us to provide this experience.

     

    Templates in unRAID allows users to install a container and use it immediately, without having to configure anything.  When properly done, they expose almost all available settings, in user friendly way.  People then just need to adjust their value when needed.

     

    But I understand that this idea may not be feasible for all types of containers.  Some templates may also be done in a way that makes automatic updates annoying.  Fortunately, for these cases and for people that want to do heavy customizations or that want to modify them to their taste, they can disable automatic updates or even create their own templates.

     

    Link to comment

    I'm on 6.9.2 and I'm seeing this issue as well and it's driving me nuts, every day my home assistant docker seems to add this random unused variable that prevents it from restarting on an update, some days I'll have like 10 of these same additional variables. 

     

    attached below you see the /path/to/device. 

     

    image.thumb.png.479772d37a603db5d6e6d9cb6c26897c.png

     

     

    Edited by spyd4r
    Link to comment
    On 1/15/2022 at 11:56 PM, tjb_altf4 said:

    edit the template XML and delete the <TemplateURL> field or set to false

     <TemplateURL>false</TemplateURL>

     

     

    Link to comment
    On 1/19/2022 at 8:27 AM, Squid said:

    They always were updating.  Except on testing, the changes never actually got applied unless you wound up editing the container (ie: you would never even notice the update happening)

     

    This change isn't set in stone.  I'm seeing which is the worst of 2 evils -> updating the templates or not updating when the author makes a change.


    Is there a way we could get notified when the remote template changes without applying the changes (or not applying them) directly?

     

    Something like what is done in Linuxserver SWAG proxy config which notify the user when default templates are updated. Ex:

     

    [cont-init.d] 70-templates: executing...
    **** The following reverse proxy confs have different version dates than the samples that are shipped. ****
    
    **** This may be due to user customization or an update to the samples. ****
    **** You should compare them to the samples in the same folder to make sure you have the latest updates. ****
    /config/nginx/proxy-confs/adguard.subdomain.conf

     

    Link to comment

    6.10-rc3+ will not update the templates for you (when it's released SOON(tm)

     

    On previous versions of the OS, edit the applicable xml in /config/plugins/dockerMan/templates-user on the flash drive and change the line that says

     

    <TemplateURL>someURL</TemplateURL>

    to instead be 

    <TemplateURL>false</TemplateURL>

     

    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.