{"id":1917,"date":"2025-04-11T00:34:43","date_gmt":"2025-04-11T00:34:43","guid":{"rendered":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/2025\/04\/11\/new-docker-extension-for-visual-studio-code\/"},"modified":"2025-04-11T00:34:43","modified_gmt":"2025-04-11T00:34:43","slug":"new-docker-extension-for-visual-studio-code","status":"publish","type":"post","link":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/2025\/04\/11\/new-docker-extension-for-visual-studio-code\/","title":{"rendered":"New Docker Extension for Visual Studio Code"},"content":{"rendered":"<p>Today, we are excited to announce the release of a new, open-source Docker Language Server and Docker DX VS Code extension. In a joint collaboration between Docker and the Microsoft Container Tools team, this new integration enhances the existing Docker extension with improved Dockerfile linting, inline image vulnerability checks, Docker Bake file support, and outlines for Docker Compose files. By working directly with Microsoft, we\u2019re ensuring a native, high-performance experience that complements the existing developer workflow. It\u2019s the next evolution of Docker tooling in VS Code \u2014 built to help you move faster, catch issues earlier, and focus on what matters most: building great software.<\/p>\n<h3 class=\"wp-block-heading\">What\u2019s the Docker DX extension?<\/h3>\n<p>The <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=docker.docker\" target=\"_blank\">Docker DX extension<\/a> is focused on providing developers with faster feedback as they edit. Whether you\u2019re authoring a complex Compose file or fine-tuning a Dockerfile, the extension surfaces relevant suggestions, validations, and warnings in real time.\u00a0<\/p>\n<p>Key features include:<\/p>\n<p><strong><em>Dockerfile linting<\/em><\/strong>: Get build warnings and best-practice suggestions directly from BuildKit and Buildx.<\/p>\n<p><strong><em>Image vulnerability remediation (experimental):<\/em><\/strong> Flags references to container images with known vulnerabilities directly in Dockerfiles.<\/p>\n<p><strong><em>Bake file support:<\/em><\/strong> Includes code completion, variable navigation, and inline suggestions for generating targets based on your Dockerfile stages.<\/p>\n<p><strong><em>Compose file outline:<\/em><\/strong> Easily navigate complex Compose files with an outline view in the editor.<\/p>\n<p>If you\u2019re already using the Docker VS Code extension, the new features are included \u2014 just update the extension and start using them!<\/p>\n<h4 class=\"wp-block-heading\">Dockerfile linting and vulnerability remediation<\/h4>\n<p>The inline Dockerfile linting provides warnings and best-practice guidance for writing Dockerfiles from the experts at Docker, powered by <a href=\"https:\/\/www.docker.com\/blog\/introducing-docker-build-checks\/\">Build Checks<\/a>. Potential vulnerabilities are highlighted directly in the editor with context about their severity and impact, powered by <a href=\"https:\/\/scout.docker.com\/\" target=\"_blank\">Docker Scout<\/a>.<\/p>\n<p>Figure 1: Providing actionable recommendations for fixing vulnerabilities and optimizing Dockerfiles<\/p>\n<p>Early feedback directly in Dockerfiles keeps you focused and saves you and your team time debugging and remediating later.<\/p>\n<h4 class=\"wp-block-heading\">Docker Bake files<\/h4>\n<p>The Docker DX extension makes authoring and editing <a href=\"https:\/\/www.docker.com\/blog\/ga-launch-docker-bake\/\">Docker Bake<\/a> files quick and easy. It provides code completion, code navigation, and error reporting to make editing Bake files a breeze. The extension will also look at your Dockerfile and suggest Bake targets based on the build stages you have defined in your Dockerfile.<\/p>\n<p>Figure 2: Editing Bake files is simple and intuitive with the rich language features that the Docker DX extension provides.<\/p>\n<p>Figure 3: Creating new Bake files is straightforward as your Dockerfile\u2019s build stages are analyzed and suggested as Bake targets.<\/p>\n<h4 class=\"wp-block-heading\">Compose outlines<\/h4>\n<p>Quickly navigate complex <a href=\"https:\/\/docs.docker.com\/reference\/compose-file\/\" target=\"_blank\">Compose files<\/a> with the extension\u2019s support for outlines available directly through VS Code\u2019s command palette.<\/p>\n<p>Figure 4: Navigate complex Compose files with the outline panel.<\/p>\n<h3 class=\"wp-block-heading\">Don\u2019t use VS Code? Try the Language Server!<\/h3>\n<p>The features offered by the Docker DX extension are powered by the brand-new <a href=\"https:\/\/github.com\/docker\/docker-language-server\" target=\"_blank\">Docker Language Server<\/a>, built on the <a href=\"https:\/\/microsoft.github.io\/language-server-protocol\/\" target=\"_blank\">Language Server Protocol<\/a> (LSP). This means the same smart editing experience \u2014 like real-time feedback, validation, and suggestions for Dockerfiles, Compose, and Bake files \u2014 is available in your favorite editor.<\/p>\n<h3 class=\"wp-block-heading\">Wrapping up<\/h3>\n<p>Install the extension from <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=docker.docker\" target=\"_blank\">Docker DX \u2013 Visual Studio Marketplace<\/a> today! The functionality is also automatically installed with the existing <a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=ms-azuretools.vscode-docker\" target=\"_blank\">Docker VS Code extension<\/a> from Microsoft.<\/p>\n<p>Share your feedback on how it\u2019s working for you, and share what features you\u2019d like to see next. If you\u2019d like to learn more or contribute to the project, check out our <a href=\"https:\/\/github.com\/docker\/vscode-extension\/\" target=\"_blank\">GitHub repo<\/a>.<\/p>\n<h3 class=\"wp-block-heading\">Learn more<\/h3>\n<p><a href=\"https:\/\/marketplace.visualstudio.com\/items?itemName=docker.docker\" target=\"_blank\">Install the Docker DX VS Code extension<\/a><\/p>\n<p><a href=\"https:\/\/github.com\/docker\/vscode-extension\/issues\" target=\"_blank\">Give us feedback or ask for features<\/a><\/p>\n<p><a href=\"https:\/\/github.com\/docker\/vscode-extension\" target=\"_blank\">Contribute to the extension project<\/a><\/p>\n<p><a href=\"https:\/\/github.com\/docker\/docker-language-server\" target=\"_blank\">Try the Docker Language Server or contribute to it<\/a><\/p>\n<p>Subscribe to the <a href=\"https:\/\/www.docker.com\/newsletter-subscription\/\">Docker Navigator Newsletter<\/a>.<\/p>\n<p>New to Docker? <a href=\"https:\/\/hub.docker.com\/signup?_gl=1*452i3u*_ga*MjEzNzc3Njk5MC4xNjgzNjY3NDkw*_ga_XJWPQMJYHQ*MTcwODcxNjA4Ni4zNjguMS4xNzA4NzE2MzE2LjUzLjAuMA..\" target=\"_blank\">Create an account<\/a>.<\/p>","protected":false},"excerpt":{"rendered":"<p>Today, we are excited to announce the release of a new, open-source Docker Language Server and Docker DX VS Code [&hellip;]<\/p>\n","protected":false},"author":0,"featured_media":0,"comment_status":"","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[4],"tags":[],"class_list":["post-1917","post","type-post","status-publish","format-standard","hentry","category-docker"],"_links":{"self":[{"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/posts\/1917","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/types\/post"}],"replies":[{"embeddable":true,"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/comments?post=1917"}],"version-history":[{"count":0,"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/posts\/1917\/revisions"}],"wp:attachment":[{"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/media?parent=1917"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/categories?post=1917"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/rssfeedtelegrambot.bnaya.co.il\/index.php\/wp-json\/wp\/v2\/tags?post=1917"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}