microsoft / microsoft/vscode-remote-release
Using dockerComposeFile via podman-compose, resolves Dockerfile in wrong directory (ENOENT on Dockerfile)
Open
@chrmarti is already working on this.
Since Sep 8, 2022.
bug
containers
podman
- Dominant language
- Dockerfile
- Stars
- 4.2k
- Forks
- 470
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 1
Description
- VSCode Version: 1.70.0 (flatpak)
- Local OS Version: SteamOS (Arch linux)
- Remote OS Version: N/A
- Remote Extension/Connection Type: N/A
- Logs:
[2022-08-15T13:58:23.111Z] Remote-Containers 0.245.0 in VS Code 1.70.0 (da76f93349a72022ca4670c1b84860304616aaa2).
[2022-08-15T13:58:23.111Z] Start: Resolving Remote
[2022-08-15T13:58:23.159Z] Setting up container for folder or workspace: /home/deck/test/node-pg
[2022-08-15T13:58:23.164Z] Start: Check Docker is running
[2022-08-15T13:58:23.165Z] Start: Run: /home/deck/flatpak/docker version --format {{.Server.APIVersion}}
[2022-08-15T13:58:23.383Z] Stop (218 ms): Run: /home/deck/flatpak/docker version --format {{.Server.APIVersion}}
[2022-08-15T13:58:23.385Z] Server API version: 3.4.4
[2022-08-15T13:58:23.385Z] Stop (221 ms): Check Docker is running
[2022-08-15T13:58:23.388Z] Start: Run: /home/deck/flatpak/docker volume ls -q
[2022-08-15T13:58:23.589Z] Stop (201 ms): Run: /home/deck/flatpak/docker volume ls -q
[2022-08-15T13:58:23.607Z] Start: Run: /home/deck/flatpak/docker ps -q -a --filter label=vsch.local.folder=/home/deck/test/node-pg --filter label=vsch.quality=stable
[2022-08-15T13:58:23.799Z] Stop (192 ms): Run: /home/deck/flatpak/docker ps -q -a --filter label=vsch.local.folder=/home/deck/test/node-pg --filter label=vsch.quality=stable
[2022-08-15T13:58:23.800Z] Start: Run: /home/deck/flatpak/docker ps -q -a --filter label=devcontainer.local_folder=/home/deck/test/node-pg
[2022-08-15T13:58:23.989Z] Stop (189 ms): Run: /home/deck/flatpak/docker ps -q -a --filter label=devcontainer.local_folder=/home/deck/test/node-pg
[2022-08-15T13:58:23.992Z] Start: Run: /app/extra/vscode/code /home/deck/.var/app/com.visualstudio.code/data/vscode/extensions/ms-vscode-remote.remote-containers-0.245.0/dist/spec-node/devContainersSpecCLI.js up --user-data-folder /home/deck/.var/app/com.visualstudio.code/config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data --docker-path /home/deck/flatpak/docker --docker-compose-path /home/deck/flatpak/docker-compose --workspace-folder /home/deck/test/node-pg --workspace-mount-consistency cached --id-label devcontainer.local_folder=/home/deck/test/node-pg --log-level debug --log-format json --config /home/deck/test/node-pg/.devcontainer/devcontainer.json --default-user-env-probe loginInteractiveShell --mount type=volume,source=vscode,target=/vscode,external=true --skip-post-create --update-remote-user-uid-default on --mount-workspace-git-root true
[2022-08-15T13:58:24.260Z] remote-containers 0.245.0.
[2022-08-15T13:58:24.260Z] Start: Run: /home/deck/flatpak/docker buildx version
[2022-08-15T13:58:24.343Z] Stop (83 ms): Run: /home/deck/flatpak/docker buildx version
[2022-08-15T13:58:24.343Z] Start: Resolving Remote
[2022-08-15T13:58:24.348Z] Start: Run: /home/deck/flatpak/docker-compose version --short
[2022-08-15T13:58:24.588Z] Stop (240 ms): Run: /home/deck/flatpak/docker-compose version --short
[2022-08-15T13:58:24.590Z] Start: Run: /home/deck/flatpak/docker ps -q -a --filter label=com.docker.compose.project=nodepgdevcontainer --filter label=com.docker.compose.service=app
[2022-08-15T13:58:24.774Z] Stop (184 ms): Run: /home/deck/flatpak/docker ps -q -a --filter label=com.docker.compose.project=nodepgdevcontainer --filter label=com.docker.compose.service=app
[2022-08-15T13:58:24.776Z] Start: Run: /home/deck/flatpak/docker-compose -f /home/deck/test/node-pg/.devcontainer/docker-compose.yml config
[2022-08-15T13:58:25.019Z] Stop (243 ms): Run: /home/deck/flatpak/docker-compose -f /home/deck/test/node-pg/.devcontainer/docker-compose.yml config
[2022-08-15T13:58:25.019Z] services:
app:
build:
args:
VARIANT: '18'
context: .
dockerfile: Dockerfile
command: sleep infinity
network_mode: service:db
volumes:
- ..:/workspace:cached
db:
environment:
POSTGRES_DB: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_USER: postgres
image: postgres:latest
restart: unless-stopped
volumes:
- postgres-data:/var/lib/postgresql/data
version: '3.8'
volumes:
postgres-data: null
[2022-08-15T13:58:25.025Z] Start: Run: /home/deck/flatpak/docker -v
[2022-08-15T13:58:25.187Z] Stop (162 ms): Run: /home/deck/flatpak/docker -v
[2022-08-15T13:58:25.188Z] Start: Run: /home/deck/flatpak/docker events --format json --filter event=start
[2022-08-15T13:58:25.194Z] PersistedPath=/home/deck/.var/app/com.visualstudio.code/config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data, ContainerHasLabels=false
[2022-08-15T13:58:25.195Z] Start: Run: /home/deck/flatpak/docker-compose -f /home/deck/test/node-pg/.devcontainer/docker-compose.yml config
[2022-08-15T13:58:25.421Z] Stop (226 ms): Run: /home/deck/flatpak/docker-compose -f /home/deck/test/node-pg/.devcontainer/docker-compose.yml config
[2022-08-15T13:58:25.421Z] services:
app:
build:
args:
VARIANT: '18'
context: .
dockerfile: Dockerfile
command: sleep infinity
network_mode: service:db
volumes:
- ..:/workspace:cached
db:
environment:
POSTGRES_DB: postgres
POSTGRES_PASSWORD: postgres
POSTGRES_USER: postgres
image: postgres:latest
restart: unless-stopped
volumes:
- postgres-data:/var/lib/postgresql/data
version: '3.8'
volumes:
postgres-data: null
[2022-08-15T13:58:25.424Z] Error: ENOENT: no such file or directory, open '/home/deck/.var/app/com.visualstudio.code/data/vscode/extensions/ms-vscode-remote.remote-containers-0.245.0/Dockerfile'
[2022-08-15T13:58:25.432Z] Stop (1440 ms): Run: /app/extra/vscode/code /home/deck/.var/app/com.visualstudio.code/data/vscode/extensions/ms-vscode-remote.remote-containers-0.245.0/dist/spec-node/devContainersSpecCLI.js up --user-data-folder /home/deck/.var/app/com.visualstudio.code/config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data --docker-path /home/deck/flatpak/docker --docker-compose-path /home/deck/flatpak/docker-compose --workspace-folder /home/deck/test/node-pg --workspace-mount-consistency cached --id-label devcontainer.local_folder=/home/deck/test/node-pg --log-level debug --log-format json --config /home/deck/test/node-pg/.devcontainer/devcontainer.json --default-user-env-probe loginInteractiveShell --mount type=volume,source=vscode,target=/vscode,external=true --skip-post-create --update-remote-user-uid-default on --mount-workspace-git-root true
[2022-08-15T13:58:25.433Z] Exit code 1
[2022-08-15T13:58:25.442Z] Command failed: /app/extra/vscode/code /home/deck/.var/app/com.visualstudio.code/data/vscode/extensions/ms-vscode-remote.remote-containers-0.245.0/dist/spec-node/devContainersSpecCLI.js up --user-data-folder /home/deck/.var/app/com.visualstudio.code/config/Code/User/globalStorage/ms-vscode-remote.remote-containers/data --docker-path /home/deck/flatpak/docker --docker-compose-path /home/deck/flatpak/docker-compose --workspace-folder /home/deck/test/node-pg --workspace-mount-consistency cached --id-label devcontainer.local_folder=/home/deck/test/node-pg --log-level debug --log-format json --config /home/deck/test/node-pg/.devcontainer/devcontainer.json --default-user-env-probe loginInteractiveShell --mount type=volume,source=vscode,target=/vscode,external=true --skip-post-create --update-remote-user-uid-default on --mount-workspace-git-root true
[2022-08-15T13:58:25.442Z] Exit code 1
Steps to Reproduce:
- install vscode flatpak
- install remote-containers extension
- install podman@latest and podman-compose@devel, provide shims to invoke from within flatpak
- create a new devcontainer config via the default "node.js + postgres" wizard
- update config to work around podman compatibility issues (below)
- try to open the container & see the above logs
Alternatively (sorry, only useful on a steam deck):
- install https://github.com/hunterloftis/dotfiles on a steam deck
- open ~/test/node-pg in a devcontainer
- see the above failure
"remoteUser": "node",
// https://blog.lifeishao.com/2021/12/30/replacing-docker-with-podman-for-your-vscode-devcontainers/
"runArgs": [
"--userns=keep-id"
],
"containerUser": "node" // the value needs to match the value of "remoteUser"
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.