Skip to content

Include the Dockerfile Language Server in the extension #146

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

Merged
merged 1 commit into from
Jun 17, 2025

Conversation

rcjsuen
Copy link
Collaborator

@rcjsuen rcjsuen commented Jun 17, 2025

Problem Description

Users may install the Docker DX extension expecting to get editing features for Dockerfiles. However, we do not currently provide any editing features for Dockerfiles as the Docker Language Server only adds linting support for Dockerfiles.

Proposed Solution

The Dockerfile Language Server provides features that the Docker Language Server does not provide so bundling it in the extension will improve the overall editing experience of Dockerfiles.

If Microsoft's Docker extension or the Container Tools extension is installed, the Dockerfile Language Server will not be started. This is because Microsoft's extensions already include the Dockerfile Language Server. If we also started the Dockerfile Language Server on our side then users may get duplicated information which we want to avoid.

Proof of Work

I confirm that I've tested the extension in a few different cases in the debugger.

There are two language servers for Dockerfiles. There is the Dockerfile
Language Server written in TypeScript and the Docker Language Server
written in Go (which also supports Compose files and Bake files). The
Dockerfile Language Server provides features that the Docker Language
Server does not provide so bundling it in the extension will improve the
overall editing experience of Dockerfiles.

If Microsoft's Docker extension or the Container Tools extension is
installed, the Dockerfile Language Server will not be started. This is
because Microsoft's extensions already include the Dockerfile Language
Server. If we also started the Dockerfile Language Server on our side
then users may get duplicated information which we want to avoid.

Signed-off-by: Remy Suen <remy.suen@docker.com>
@rcjsuen rcjsuen self-assigned this Jun 17, 2025
@rcjsuen rcjsuen merged commit e81023e into main Jun 17, 2025
12 checks passed
@rcjsuen rcjsuen deleted the bundle-dockerfile-language-server branch June 17, 2025 14:32
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

Successfully merging this pull request may close these issues.

1 participant