Skip to content

Commit

Permalink
Merge pull request moby#47494 from vvoland/devcontainer-golang
Browse files Browse the repository at this point in the history
devcontainer: Add Golang extension
  • Loading branch information
thaJeztah authored Mar 11, 2024
2 parents 0fb8458 + eef352b commit b8165a9
Show file tree
Hide file tree
Showing 2 changed files with 21 additions and 2 deletions.
12 changes: 10 additions & 2 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,11 +3,19 @@
"build": {
"context": "..",
"dockerfile": "../Dockerfile",
"target": "dev"
"target": "devcontainer"
},
"workspaceFolder": "/go/src/github.com/docker/docker",
"workspaceMount": "source=${localWorkspaceFolder},target=/go/src/github.com/docker/docker,type=bind,consistency=cached",

"remoteUser": "root",
"runArgs": ["--privileged"]
"runArgs": ["--privileged"],

"customizations": {
"vscode": {
"extensions": [
"golang.go"
]
}
}
}
11 changes: 11 additions & 0 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -251,6 +251,12 @@ RUN --mount=type=cache,target=/root/.cache/go-build \
GOBIN=/build/ GO111MODULE=on go install "mvdan.cc/sh/v3/cmd/shfmt@${SHFMT_VERSION}" \
&& /build/shfmt --version

FROM base AS gopls
RUN --mount=type=cache,target=/root/.cache/go-build \
--mount=type=cache,target=/go/pkg/mod \
GOBIN=/build/ GO111MODULE=on go install "golang.org/x/tools/gopls@latest" \
&& /build/gopls version

FROM base AS dockercli
WORKDIR /go/src/github.com/docker/cli
ARG DOCKERCLI_REPOSITORY
Expand Down Expand Up @@ -655,6 +661,11 @@ RUN <<EOT
docker-proxy --version
EOT

# devcontainer is a stage used by .devcontainer/devcontainer.json
FROM dev-base AS devcontainer
COPY --link . .
COPY --link --from=gopls /build/ /usr/local/bin/

# usage:
# > make shell
# > SYSTEMD=true make shell
Expand Down

0 comments on commit b8165a9

Please sign in to comment.