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

Feature request: show container names #40

Open
mudasar187 opened this issue Jul 1, 2019 · 10 comments
Open

Feature request: show container names #40

mudasar187 opened this issue Jul 1, 2019 · 10 comments
Labels
good first issue Good for newcomers

Comments

@mudasar187
Copy link

mudasar187 commented Jul 1, 2019

Hi, i'v tested out lazydocker today and i love it!
A feature to have is to have names on the containers where the Services window is.

I have a docker-compose.yml file:

version: '3.7'

services:
  mongodb:
    image: mongo
    container_name: "db_app"
    ports:
      - "27017:27017"

  frontend:
    image: quizgame/webclient
    container_name: "web_app"
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "8080:3000"
    environment:
      - NODE_ENV=docker
    depends_on:
      - mongodb

In Services window, there is to running containers.

running frontend 0.00%
running mongodb 0.35%

It should be:

running frontend (web_app) 0.00%
running mongodb (db_app) 0.35%

Love this tool!

@jesseduffield jesseduffield added the good first issue Good for newcomers label Jul 1, 2019
@jesseduffield
Copy link
Owner

Sounds like a reasonable request. Given that there if often not much horizontal space, I'm inclined to make this a user configurable thing that defaults to false. Something like:

gui:
  showContainerName: true

What are your thoughts on that approach?

As for implementation, It would be fairly trivial to write the code, it would just be a matter of changing the GetDisplayStrings() function in pkg/commands/service.go. I'm happy to label this as Good First Issue and see if anybody wants to pick it up (I'm happy to lend a hand) :)

@mudasar187
Copy link
Author

Nice to hear :)

My thoughts is, make it default:

gui:
    showContainerName: true

And if someone dont want the container name then they can set it to false.
If if there is no more space in horizontal then you can show like these examples:

running thisIsNameOfService (..) 0.00% (service name is long then add (..) to container name
same on the other way.

And when you click on this service it will show a header on the left windows where Logs, Stats, Container Config, Top is and show the container name on the header.

@pvande
Copy link
Contributor

pvande commented Jul 1, 2019

My $0.02: I don't really want or need to see the container name in the sidebar (in the header of the main panel would be great though!) unless the service has a dynamic container_name. Knowing what directory lazydocker is running in would be more useful.

My primary use case is in development, where I run a few distinct projects that share service names. My services have static container names to make linking them together easier, and I'm never running a service as more than a single instance. If/when I cannot supply a container name (e.g. swarms), I'd still like to see the service listed, along with the specific containers.

@jesseduffield
Copy link
Owner

@pvande how about instead of having lazydocker in the status panel in the top left, we have the name of the current directory?

As for dynamic container names, I wonder how easy it is to see if a container name is dynamic.

@mudasar187 I'm hesitant to use the ellipsis approach because it seems to me that people either want to know what the container name is or not, and if they have no way to expand the width of the side panels, they can't really access that information. This makes me think we should probably support having a short and long sidepanel view for when you want everything you need in tabular form, but that's a separate issue.

If we could find a way to check if a container name was dynamic, and if so, show it in brackets, would that satisfy both your use cases?

@mudasar187
Copy link
Author

@jesseduffield Yeah, i think thats a better suggestion :)

@pvande
Copy link
Contributor

pvande commented Jul 2, 2019

@jesseduffield I would have suggested putting it in that status panel, but I didn't want to suggest losing the branding!

As for dynamic container names, I'm more or less working from the definition "the docker-compose service does not specify a container_name key". That may not be perfectly adequate, but it seems like a good starting point.

@pvande
Copy link
Contributor

pvande commented Jul 27, 2019

Given that Container names may be long, and Services may have multiple containers associated with them, I'm increasingly inclined towards a UI like this:

image

I would be curious to hear what other people think of this, and how other people would expect it to work. If there's enough interest in this approach, I may go ahead and try to move it forward myself...

@kuba-gaj
Copy link

Happy to have a look into this over christmas break if that's ok

@dawidd6
Copy link
Collaborator

dawidd6 commented Dec 19, 2019

Please, go ahead.

@mihirsn
Copy link

mihirsn commented Aug 14, 2020

Hi, is anyone working on it, otherwise I would like to pick this up

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

No branches or pull requests

6 participants