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

Finch could not be used as a docker replacement for Dev Containers in VSCode #387

Open
normalerweise opened this issue Apr 28, 2023 · 5 comments
Labels
enhancement New feature or request

Comments

@normalerweise
Copy link

Describe the bug
Briefly describe the problem you are having.

Steps to reproduce
Follow: https://code.visualstudio.com/docs/devcontainers/tutorial
However after installing Dev Containers extension, go to the extensions settings and replace Docker and Docker Compose Path settings with the corresponding finch path (see screenshot)

Expected behavior
Visual Studio Code Dev Containers successfully starts a dev container using finch

Screenshots or logs
image

image

Additional context
Finch seems to not support the --format parameter for the version command

To help debug the issue as quickly as possible, we recommend generating a support bundle with finch support-bundle-generate and attaching it to this issue. This packages all Finch-related configs and logs into one file.

@normalerweise normalerweise added the bug Something isn't working label Apr 28, 2023
@ningziwen
Copy link
Member

The issue to track --format. #199

@ningziwen ningziwen added enhancement New feature or request and removed bug Something isn't working labels May 1, 2023
@weikequ
Copy link
Contributor

weikequ commented Jun 21, 2023

Was able to do a patch to get past the version --format check, but getting some subsequent errors. Anyone have any idea?

[31 ms] Dev Containers 0.295.0 in VS Code 1.79.2 (695af097c7bd098fbf017ce3ac85e09bbc5dda06).
[30 ms] Start: Resolving Remote
[38 ms] Start: Check Docker is running
[39 ms] Start: Run: /Users/weikequ/weikequ/finch/_output/bin/finch version --format {{.Server.APIVersion}}
[202 ms] Stop (163 ms): Run: /Users/weikequ/weikequ/finch/_output/bin/finch version --format {{.Server.APIVersion}}
[202 ms] Server API version: Client:
 Version:       fef6e77.modified
 OS/Arch:       linux/arm64
 GitCommit:     fef6e772c28429ef14068702c1dfd8e9fec2dea1
 nerdctl:
  Version:      v1.4.0
  GitCommit:    7e8114a82da342cdbec9a518c5c6a1cce58105e9
 buildctl:
  Version:      v0.11.6
  GitCommit:    2951a28cd7085eb18979b1f710678623d94ed578

Server:
 containerd:
  Version:      v1.7.1
  GitCommit:    1677a17964311325ed1c31e2c0a3589ce6d5c30d
 runc:
  Version:      1.1.7
  GitCommit:    v1.1.7-0-g860f061b
[202 ms] Stop (164 ms): Check Docker is running
[204 ms] Start: Removing incomplete bootstrap-image folder.
[217 ms] Stop (13 ms): Removing incomplete bootstrap-image folder.
[240 ms] Start: Run: tar --no-same-owner -x -f -
[264 ms] Stop (24 ms): Run: tar --no-same-owner -x -f -
[265 ms] Start: Run: /Users/weikequ/weikequ/finch/_output/bin/finch build -f /var/folders/68/9572bpy50fn85mdgf1y_8bl00000gr/T/vsch/bootstrap-image/0.295.0/bootstrap.Dockerfile -t vsc-volume-bootstrap /var/folders/68/9572bpy50fn85mdgf1y_8bl00000gr/T/vsch/bootstrap-image/0.295.0
FATA[0000] lstat /var/folders/68/9572bpy50fn85mdgf1y_8bl00000gr/T/vsch/bootstrap-image/0.295.0/bootstrap.Dockerfile: no such file or directory 
FATA[0000] exit status 1                                
[703 ms] Stop (438 ms): Run: /Users/weikequ/weikequ/finch/_output/bin/finch build -f /var/folders/68/9572bpy50fn85mdgf1y_8bl00000gr/T/vsch/bootstrap-image/0.295.0/bootstrap.Dockerfile -t vsc-volume-bootstrap /var/folders/68/9572bpy50fn85mdgf1y_8bl00000gr/T/vsch/bootstrap-image/0.295.0
[705 ms] Command failed: /Users/weikequ/weikequ/finch/_output/bin/finch build -f /var/folders/68/9572bpy50fn85mdgf1y_8bl00000gr/T/vsch/bootstrap-image/0.295.0/bootstrap.Dockerfile -t vsc-volume-bootstrap /var/folders/68/9572bpy50fn85mdgf1y_8bl00000gr/T/vsch/bootstrap-image/0.295.0
[705 ms] Exit code 1

@estesp
Copy link
Contributor

estesp commented Jun 23, 2023

Looks like it wants to use temp folders in /var/folders/nn...; I assume that path is not mounted in the VM?

@weikequ
Copy link
Contributor

weikequ commented Aug 18, 2023

Since #525 is merged for better compatibility, we are unblocked for this previous issue. But upon further investigation, it seems like we may have hit a wall with it looking to mount the docker socket file to proceed.

[6 ms] Dev Containers 0.304.0 in VS Code 1.81.1 (6c3e3dba23e8fadc360aed75ce363ba185c49794).
[6 ms] Start: Resolving Remote
[12 ms] Start: Check Docker is running
[13 ms] Start: Run: /Users/weikequ/weikequ/finch/_output/bin/finch version --format {{.Server.APIVersion}}
[190 ms] Server API version: Client:
[truncated]
[192 ms] Start: Run: /Users/weikequ/weikequ/finch/_output/bin/finch build -f /var/folders/68/9572bpy50fn85mdgf1y_8bl00000gr/T/vsch/bootstrap-image/0.304.0/bootstrap.Dockerfile -t vsc-volume-bootstrap /var/folders/68/9572bpy50fn85mdgf1y_8bl00000gr/T/vsch/bootstrap-image/0.304.0
[truncated]
[5292 ms] Start: Run: /Users/weikequ/weikequ/finch/_output/bin/finch run -d --mount type=volume,src=alpine-4,dst=/workspaces -v /var/run/docker.sock:/var/run/docker.sock vsc-volume-bootstrap sleep infinity
[5680 ms] Command failed: /Users/weikequ/weikequ/finch/_output/bin/finch run -d --mount type=volume,src=alpine-4,dst=/workspaces -v /var/run/docker.sock:/var/run/docker.sock vsc-volume-bootstrap sleep infinity
[5680 ms] time="2023-08-18T22:13:56Z" level=fatal msg="failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error mounting \"/var/run/docker.sock\" to rootfs at \"/var/run/docker.sock\": stat /var/run/docker.sock: no such file or directory: unknown"
time="2023-08-18T15:21:22-07:00" level=fatal msg="exit status 1"
[5680 ms] Exit code 1

@weikequ
Copy link
Contributor

weikequ commented Aug 18, 2023

If I supply it a dummy docker.sock file, it proceeds to predictably fail a few lines later running a docker command.

[6992 ms] Start: Run in container: /bin/sh
[7571 ms] Start: Run in container: node /root/.vscode-remote-containers/dist/dev-containers-cli-0.304.0/dist/spec-node/devContainersSpecCLI.js read-configuration --workspace-folder /workspaces/alpine-4 --id-label vsc.devcontainer.volume.name=alpine-4 --id-label vsc.devcontainer.volume.folder=alpine-4 --log-level debug --log-format json --mount-workspace-git-root true --terminal-columns 200 --terminal-rows 25
[-438108 ms] @devcontainers/cli 0.50.0. Node.js v16.20.1. linux 6.3.12-200.fc38.aarch64 arm64.
[-438108 ms] Start: Run: git rev-parse --show-cdup
[-438103 ms] Start: Run: docker ps -q -a --filter label=vsc.devcontainer.volume.name=alpine-4 --filter label=vsc.devcontainer.volume.folder=alpine-4
[-438090 ms] Command failed: docker ps -q -a --filter label=vsc.devcontainer.volume.name=alpine-4 --filter label=vsc.devcontainer.volume.folder=alpine-4
[8056 ms] time="2023-08-18T22:18:41Z" level=fatal msg="exec failed with exit code 1"
[8059 ms] time="2023-08-18T15:26:07-07:00" level=fatal msg="exit status 1"
[8060 ms] Exit code 1
[8061 ms] Command failed: node /root/.vscode-remote-containers/dist/dev-containers-cli-0.304.0/dist/spec-node/devContainersSpecCLI.js read-configuration --workspace-folder /workspaces/alpine-4 --id-label vsc.devcontainer.volume.name=alpine-4 --id-label vsc.devcontainer.volume.folder=alpine-4 --log-level debug --log-format json --mount-workspace-git-root true --terminal-columns 200 --terminal-rows 25
[8061 ms] Exit code 1

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

No branches or pull requests

4 participants