Vscode-docker: After update to 1.42 docker container&images panels are disappeared.

Created on 7 Feb 2020  Â·  22Comments  Â·  Source: microsoft/vscode-docker

Issue Type: Bug

Windows 10 Home.
Docker-machine running.
Update to new version of 1.42.
There is no more panels of containers and images.. The same is in remote mode if I connect to my remote host.

Extension version: 0.10.0
VS Code version: Code 1.42.0 (ae08d5460b5a45169385ff3fd44208f431992451, 2020-02-06T10:51:34.058Z)
OS version: Windows_NT x64 10.0.18362

external

Most helpful comment

Thanks folks. I've been working with @sbatten and it seems that the changes for https://github.com/microsoft/vscode/issues/85164 are related, along with the conflicting view IDs between the two extensions.

I was able to reproduce the issue with the following:

  1. Uninstall both extensions
  2. Install the Docker Explorer (third party) extension first

    1. It puts the Containers and Images view in the Explorer viewlet, not in the Docker viewlet

  3. Install the Docker (first party) extension

    1. Note: the extensions didn't actually have to be _installed_ in this order, just _loaded_ in this order upon launching 1.42, but installing one and then the other guarantees the load order

  4. The view-moving code that @sbatten added now thinks that the Images and Containers views (which share the same ID in both extensions) belong in the Explorer viewlet, which is why they do not show up in the Docker viewlet. I suspect for most people they do actually show up in the Explorer viewlet:
    image
  5. Uninstalling the Docker Explorer extension does not quite fix the problem, because the view-moving code still thinks Images and Containers belong in the Explorer viewlet, due to the conflicting IDs. Here's what I see after uninstalling the Docker Explorer extension:
    image
    image

How to fix it

  1. Uninstall the Docker Explorer (third party) extension
  2. In Settings, enable the experimental feature Workbench > View > Experimental: Allow Moving To New Container (setting ID workbench.view.experimental.allowMovingToNewContainer)
  3. In the Explorer viewlet, right click the Images and Containers views and choose Move to Panel:
    image
  4. They should now show in the center panel, same as where terminals and output windows usually show:
    image
  5. Right click them there, and choose Move to Sidebar. This should return them to their proper place in the Docker viewlet:
    image
  6. If desired, you can now disable the setting from step 2.

@irbisKo , @msssk , @jwtd , can you try the fix steps above and let us know if they work?

All 22 comments

@irbisKo, are you no longer seeing containers / images (does docker command line work?), or actually are the Panels completely missing in VSCode? We have tried on several machines and not able repro but have only tried on Windows Pro. Can you submit a screen shot and we can also try updating to 1.42 on Windows 10 Home.

Thank you for your fast feedback. Here are 3 strange behaviors what I got after update,
So I restarted the computer, reinstall extensions and established a connection with remote Host.
What I don't try yet is reinstall VSCode itself.
1) Now I can see in Explorer tab panels Images and Containers. If I open Docker tab then there are just Registries, Networks and Volumes. As you can see there some troubles with docker icon and there is no data.
bug142PNG
bug2_142PNG

Then after opening a project:
The same order of tabs and pannel but with data.
The terminal works fine.
2) But If I try to make manipulation on one container. For example, start/remove than I got a window for multiple selections:
bug4_142PNG

3) I tried to open a project on the host. It looks 3-4 attempts from VS Code to open the project with a workspace. First two like:
bug5_142PNG
Then popup window: "Cannot reconnect. Please reload the window. Reconnection in 4-3-2-.."
I worked already sometimes with VSCode and every time the connection was smooth. Now the connecting time very long.

I have a presentation next week for my colleges about remote development inside containers with VS Code. I think I need to use the old stable version.

Update: After reinstalling VS Code the delay and strange behaviors by connection to the host are gone. the issue with panels stays

Same problem here, upgraded VS Code to 1.42 on Windows 10 Pro with Docker Desktop 2.1.0.4 and now the only panels I see are Registries, Networks, and Volumes.

I'm getting the same behaviors on:

OSX 10.14.6
Docker Desktop: 2.2.0.0
Visual Studio Code Version: 1.42.0
Docker extension v0.10.0

After installing, I see the docker icon in the left vertical menu, but when I open the drawer, I only see Volumes, Registries, and Networks in the drop down list.

@irbisKo @msssk @jwtd What other extensions have you installed? Do you see this behavior if only the Docker extension (vscode-docker) is installed?

Did you also happen to install the Docker Explorer extension? (This extension is known to have view/command IDs that conflict with our extension and can cause VS Code to exhibit weird placement/behavior of our windows.)

Currently, the only docker extension I have installed is vscode-docker. Previously, I had the docker extension pack installed. I've tried uninstalling all and reinstalling vscode-docker on its own. I get the same issue each time.

Aside from the docker extension, I have gitlense, terraform, live share, and aws extensions installed.

@jwtd The Docker "extension pack" is from the same author as the Docker Explorer and just bundles both our extension and Docker Explorer, so that would definitely cause a problem. It's curious that removing that extension doesn't resolve the issue (as it does in my testing on my Windows machine).

If you click the Docker tab, then right-click at the top of the Docker explorer are (e.g. next to the "Docker" label), you should get a context menu that allows you to show/hide individual tree views (e.g. registry, networks, volumes, etc.). Do you see the images or containers tree view in that list?

I did previously have Docker Explorer and Docker both installed, and Docker was working. When I updated VSCode to 1.42 Docker stopped working. I uninstalled Docker Explorer, no change. So I uninstalled Docker, quit/opened VSCode, reinstalled Docker, quit/open again, Docker still not working. I've reinstalled Docker again and it still isn't working.

In the right-click menu I only see "Registry", "Networks", and "Volumes". I tried disabling all other extensions (none are Docker-related) and still only see "Registry", "Networks", and "Volumes".

When I click the Docker tab, then right-click at the top of the Docker explorer areaI do get a context menu that allows you to show/hide individual tree views, but it only shows volumes, registry, and networks.

2020-02-10_16-48-53

@philliphoff I don't have installed Docker Explorer. Just Docker and Remote Development. The same individual tree view just with Volumes, Registries, and Networks. In the Explorer tab in the inividual tree views I can see Images and Containers.

@irbisKo Can you share a screenshot of the Views section of Contributions from the extension info page? At the bottom of the Contributions should be the Views section:
image

It seems like there is some conflict on contributions that is causing the views to be hidden...

@irbisKo @msssk @jwtd I have an idea for what might be going wrong. The Docker Explorer extension (the other one, not ours) has settings to show/hide its panels: https://github.com/formulahendry/vscode-docker-explorer/blob/master/package.json#L46

Namely:

config.docker-explorer.showDockerContainers
config.docker-explorer.showDockerImages
...

Can you check your user settings and see if there are values present for those settings, particularly, false values? What happens if you remove the Docker Explorer extension and also those values?

I looked and didn't find those set in my settings.json. I tried
manually setting those values to true, but they didn't cause the menus to
appear. Right now the only way I can see the images and containers is if I
install the other guy's extension. When I do that they drawers appear as
submenus in the default explorer menu. They do not appear in the Docker
menu.

On Thu, Feb 13, 2020 at 1:36 PM Brandon Waterloo [MSFT] <
[email protected]> wrote:

@irbisKo https://github.com/irbisKo @msssk https://github.com/msssk
@jwtd https://github.com/jwtd I have an idea for what might be going
wrong. The Docker Explorer extension (the other one, not ours) has settings
to show/hide its panels:
https://github.com/formulahendry/vscode-docker-explorer/blob/master/package.json#L46

Namely:

config.docker-explorer.showDockerContainers
config.docker-explorer.showDockerImages
...

Can you check your user settings and see if there are values present for
those settings, particularly, false values? What happens if you remove
the Docker Explorer extension and also those values?

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/vscode-docker/issues/1609?email_source=notifications&email_token=AAALL7HG7ZHYKJ6RHHI37HTRCWHMJA5CNFSM4KRQSFKKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELWDTOA#issuecomment-585906616,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAALL7FJTURSHXDBY26JXTDRCWHMJANCNFSM4KRQSFKA
.

Thanks @jwtd. Man, this is a strange bug. I'll see if I can find information on VSCode; why the behavior may have changed. There could be some weird caching things happening that cause conflicts with the Docker Explorer extension even when it is uninstalled.

@sbatten, @philliphoff found https://github.com/microsoft/vscode/issues/85164, we were wondering if the code there could be causing this strange behavior we're seeing. For context--

  • Both the Docker Explorer (third party) and our Docker extension (first party) use the view IDs dockerContainers and dockerImages for custom tree views; unfortunately in conflict.
  • Some users have both extensions installed, the behavior from that is sometimes weird but mostly not broken.
  • Beginning in VSCode 1.42 users have reported those views disappearing, and staying disappeared even after uninstalling the third-party Docker Explorer extension.

Is it possible these things are related to those changes?

Can you check your user settings and see if there are values present for those settings

No values present, I added them manually and VSCode displayed them as unknown configuration settings and they had no effect.

Thanks folks. I've been working with @sbatten and it seems that the changes for https://github.com/microsoft/vscode/issues/85164 are related, along with the conflicting view IDs between the two extensions.

I was able to reproduce the issue with the following:

  1. Uninstall both extensions
  2. Install the Docker Explorer (third party) extension first

    1. It puts the Containers and Images view in the Explorer viewlet, not in the Docker viewlet

  3. Install the Docker (first party) extension

    1. Note: the extensions didn't actually have to be _installed_ in this order, just _loaded_ in this order upon launching 1.42, but installing one and then the other guarantees the load order

  4. The view-moving code that @sbatten added now thinks that the Images and Containers views (which share the same ID in both extensions) belong in the Explorer viewlet, which is why they do not show up in the Docker viewlet. I suspect for most people they do actually show up in the Explorer viewlet:
    image
  5. Uninstalling the Docker Explorer extension does not quite fix the problem, because the view-moving code still thinks Images and Containers belong in the Explorer viewlet, due to the conflicting IDs. Here's what I see after uninstalling the Docker Explorer extension:
    image
    image

How to fix it

  1. Uninstall the Docker Explorer (third party) extension
  2. In Settings, enable the experimental feature Workbench > View > Experimental: Allow Moving To New Container (setting ID workbench.view.experimental.allowMovingToNewContainer)
  3. In the Explorer viewlet, right click the Images and Containers views and choose Move to Panel:
    image
  4. They should now show in the center panel, same as where terminals and output windows usually show:
    image
  5. Right click them there, and choose Move to Sidebar. This should return them to their proper place in the Docker viewlet:
    image
  6. If desired, you can now disable the setting from step 2.

@irbisKo , @msssk , @jwtd , can you try the fix steps above and let us know if they work?

Same issue here after updating Docker Desktop.

Yes, this procedure corrected the issue for me.

On Fri, Feb 14, 2020 at 10:16 AM Brandon Waterloo [MSFT] <
[email protected]> wrote:

Thanks folks. I've been working with @sbatten https://github.com/sbatten
and it seems that the changes for microsoft/vscode#85164
https://github.com/microsoft/vscode/issues/85164 are related, along
with the conflicting view IDs between the two extensions.

I was able to reproduce the issue with the following:

  1. Uninstall both extensions
  2. Install the Docker Explorer (third party) extension first

    1. It puts the Containers and Images view in the Explorer viewlet,

      not in the Docker viewlet

  3. Install the Docker (first party) extension

    1. Note: the extensions didn't actually have to be installed in

      this order, just loaded in this order upon launching 1.42, but

      installing one and then the other guarantees the load order

  4. The view-moving code that @sbatten https://github.com/sbatten
    added now thinks that the Images and Containers views (which share the same
    ID in both extensions) belong in the Explorer viewlet, which is why they do
    not show up in the Docker viewlet. I suspect for most people they do
    actually show up in the Explorer viewlet:
    [image: image]
    https://user-images.githubusercontent.com/36966225/74542493-b650ac00-4f11-11ea-8908-11c6a3f8fc8a.png
  5. Uninstalling the Docker Explorer extension does not quite fix the
    problem, because the view-moving code still thinks Images and Containers
    belong in the Explorer viewlet, due to the conflicting IDs. Here's what I
    see after uninstalling the Docker Explorer extension:
    [image: image]
    https://user-images.githubusercontent.com/36966225/74542577-e304c380-4f11-11ea-9a3a-c48274867300.png
    [image: image]
    https://user-images.githubusercontent.com/36966225/74542622-f3b53980-4f11-11ea-92a3-cdfe4cc957a1.png

How to fix it

  1. Uninstall the Docker Explorer (third party) extension
  2. In Settings, enable the experimental feature Workbench > View >
    Experimental: Allow Moving To New Container (setting ID
    workbench.view.experimental.allowMovingToNewContainer)
  3. In the Explorer viewlet, right click the Images and Containers
    views and choose Move to Panel:
    [image: image]
    https://user-images.githubusercontent.com/36966225/74542872-6f16eb00-4f12-11ea-8217-212aa6e11b39.png
  4. They should now show in the center panel, same as where terminals
    and output windows usually show:
    [image: image]
    https://user-images.githubusercontent.com/36966225/74542948-8e157d00-4f12-11ea-82f3-59148cbfd3fc.png
  5. Right click them there, and choose Move to Sidebar. This should
    return them to their proper place in the Docker viewlet:
    [image: image]
    https://user-images.githubusercontent.com/36966225/74543027-abe2e200-4f12-11ea-8a5c-3f949b0d2cdc.png
  6. If desired, you can now disable the setting from step 2.

@irbisKo https://github.com/irbisKo , @msssk https://github.com/msssk
, @jwtd https://github.com/jwtd , can you try the fix steps above and
let us know if they work?

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/microsoft/vscode-docker/issues/1609?email_source=notifications&email_token=AAALL7BADKLO5NUW4LAII2LRC2YWLA5CNFSM4KRQSFKKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOELZLKAQ#issuecomment-586331394,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAALL7DNXJPCZ2QZYO4H7OTRC2YWLANCNFSM4KRQSFKA
.

@bwateratmsft Thank you for troubleshooting this! Fix works!

Awesome! Glad to hear it's working.

I'll close this one as external. I created https://github.com/formulahendry/vscode-docker-explorer/pull/53 in the Docker Explorer extension to change the IDs to prevent conflicts. The Docker Explorer extension did use the IDs first, but because this extension has dependents in Remote - Containers, it would be more difficult to change this one.

Was this page helpful?
0 / 5 - 0 ratings