Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Polls / New features #166

Open
Silex opened this issue Oct 6, 2021 · 17 comments
Open

Polls / New features #166

Silex opened this issue Oct 6, 2021 · 17 comments

Comments

@Silex
Copy link
Owner

Silex commented Oct 6, 2021

This issue is there for when we need feedback on the package's direction.

Feel free to subscribe/unsubscribe from it.

@Silex
Copy link
Owner Author

Silex commented Oct 6, 2021

@Silex
Copy link
Owner Author

Silex commented Oct 6, 2021

[POLL] docker-machine is deprecated. I was thinking of removing support for it. Make some noise if you disagree 😉

@twmr
Copy link

twmr commented Oct 7, 2021

Re-adding support for podman would be nice.

@codewylle
Copy link

There are alive fork of docker-machine maintained by gitlab. It will be nice if you restore support for it, but makes it optional.

@Silex
Copy link
Owner Author

Silex commented Oct 13, 2021

@codewylle interesting, but it still does not support json in their Go template format. This makes it a pain because we have to handle it separatly , and apparently you seem to be the only user.

foo@host:~$ ./docker-machine-Linux-x86_64 ls --format="{{ .Id }}"
foo@host:~$ ./docker-machine-Linux-x86_64 ls --format="{{ json .Id }}"
template: :1: function "json" not defined

But if it's valuable to you I can help you in making it a standalone package that you could maintain?

@codewylle
Copy link

@Silex thank you for readying to help. I will try to.

How can I inject docker-machine to docker transient?

@Silex
Copy link
Owner Author

Silex commented Oct 15, 2021

@codewylle: let's continue in #168

@behrica
Copy link

behrica commented Nov 28, 2021

Support for "devcontainers.json" ?

devcontainer.json becomes a bit of standard way of describing "development containers."
Parts of it is Visual Studio Code specific, but parts are not.

https://code.visualstudio.com/docs/remote/devcontainerjson-reference

I think Emacs should have a way to handle it in some form. (= build the Docker image it "describes")
Maybe this package is the right place.

devcontainer.json files appear in lots of projects.

@Silex
Copy link
Owner Author

Silex commented Nov 29, 2021

@behrica: That looks like a lot of work. What support do you have in mind? It's the first time I encounter it.

@behrica
Copy link

behrica commented Nov 29, 2021

I only think about a small subset, of "fields" from the devcontainer.json file

Firstly there is an existing cli tool, which should be "called" from emacs:

https://code.visualstudio.com/docs/remote/devcontainer-cli

This does a big chunk of the work already.
It does a image build, as vscode would do.

This is the "first stage build".
Then we would only need code, which does something with 5 fields from the "devcontainer.json";

  • postCreateCommand
  • postStartCommand
  • postAttachCommand
  • initializeCommand
  • onCreateCommand

-> 5 times "docker exec ..."

and the there are some options, which "configure" how the final "docker run" is executed:

  • mounts
  • ports ...

I have initial code for this, which basically is a sequence of calls (5 or 6) to "docker ....

This would therefore simulate what VSCode does when it "builds and starts" a devcontainer from a devcontainer.json file.
All the VSCode specific fields in there, Emacs would ignore.

I was starting to build this as a standalone CLI tool (which maybe makes more sense)
I am rather convinced, that "any IDE" on mid-term will support the "devcontainer.json" format, due to the popularity and reach of VSCode.

Curious about any comment from your side.

@Silex
Copy link
Owner Author

Silex commented Nov 29, 2021

Continuing in #174

@noorul
Copy link
Contributor

noorul commented Jan 15, 2022

Option to use vterm (full-blown terminal emulator) with various commands.

@Silex
Copy link
Owner Author

Silex commented Feb 8, 2022

@noorul continuing in #179

@Silex
Copy link
Owner Author

Silex commented Feb 8, 2022

Just a heads-up: I'm working on the async implementation and I found aio which produce very clean code (compare https://github.com/Silex/docker.el/blob/aio/docker-network.el#L90-L94 vs https://github.com/Silex/docker.el/blob/async/docker-network.el#L115-L128 (the comparison is not completely fair but you get the idea: waiting on multiple callbacks is a pain in vanilla emacs)).

The thing is aio needs Emacs 26, so that means docker.el will require Emacs 26.

It's probably not a big deal for anyone but I was surprised in the past so let's see what happens 😆

@holgerschurig
Copy link

[POLL] docker-machine is deprecated. I was thinking of removing support for it. Make some noise if you disagree wink

Funny, because podman recently implemented new things to it's "podman machine" calls. For example, look at https://github.com/containers/podman/releases/ and you see in Podman v4.1.0 from May 2022 you see several enhancements to "podman machine".

Personally I don't care about this poll entry, as I don't use "podman machine".

@noorul
Copy link
Contributor

noorul commented Jun 18, 2022

support for docker image history command

@unhammer
Copy link

something to inspect layers; https://github.com/wagoodman/dive does this, sometimes handy for checking sizes

(I have no idea how complex it would be, just throwing the idea out here since this seemed like the right place)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants