microsoft / AzureStorageExplorer

Easily manage the contents of your storage account with Azure Storage Explorer. Upload, download, and manage blobs, files, queues, tables, and Cosmos DB entities. Gain easy access to manage your virtual machine disks. Work with either Azure Resource Manager or classic storage accounts, plus manage and configure cross-origin resource sharing (CORS) rules.
Creative Commons Attribution 4.0 International
377 stars 86 forks source link

Enable Docker CLI for Linux snaps #8161

Open craxal opened 2 months ago

craxal commented 2 months ago

Continuation of feature request #8073.

Due to the sandbox nature of snaps, the Storage Explorer snap needs some more configuration to make the Docker CLI available in order to find Azurite instances in Docker containers.

craxal commented 2 months ago

While there does exist a Docker snap, this is maintained by Canonical rather than Docker. It is not yet clear whether the snap-based engine is the same as or works with the standard installation-based engine, and therefore it is unclear whether using the Docker snap will have access to the same containers. Furthermore, it's unclear how the Docker snap interacts with other Docker-related tools and technologies. The bottom line is I think we are better off focusing on making the standard installation Docker CLI available to the Storage Explorer snap.

I think this can be accomplished by creating a symlink in the snap directory structure that points to the default installation location. So far, I have not been successful in getting this to work. I'm currently seeking help in the Snapcraft forums.

craxal commented 1 week ago

There may be another way to do this with the Docker Engine API, which is a REST API. If the snap can access the Unix socket used to communicate with the engine, we won't need the docker CLI command at all.

And it sounds like there may be two ways to expose the socket to the snap. Either (1) connect the docker interface, or (2) layout/map the socket to a location in the snap.