- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前遇到这个问题:
Command failed: /bin/sh -c ./.devcontainer/postCreateCommand.sh
这是
"postCreateCommand": "./.devcontainer/postCreateCommand.sh",
来自 devcontainer.json
的设置。
但是当我停用“postCreateCommand”并在创建容器后手动运行它时,该脚本有效。这让我想到,问题可能出在脚本的路径上。但事实也并非如此。因为只有一个 echo 命令的空脚本似乎可以工作。
脚本如下:
echo "Installing Developer Requirements"
apt-get update && apt-get install -y man git
pip3 install -r .devcontainer/dev_pip_requirements.txt
关于如何调试 "PostCreateCommand"
有什么想法吗?输出没有多大帮助,我不想开始将这个项目缩减为最小的工作示例。
我更改了 git 以在 Windows 上检查所有以 linux 文件结尾的文件。我三重检查了 shell 脚本是否有 LF 结尾。所以这些也不应该成为问题。 (他们以前是)。
最佳答案
我认为一个原因可能是用户没有足够的权限甚至无法执行 apt-get update
命令。
将 remoteUser
更改为 root
,在 devcontainer.json
配置文件中应该允许执行 postCreateCommand.sh
shell 脚本在使用 bash
运行时成功。
我已经尝试使用 python:3.8-slim-buster
Docker 镜像,在 Dockerfile 中设置了一个
。non-root
用户
我已将以下内容添加到 ./.devcontainer/devcontainer.json
:
"postCreateCommand": "bash ./.devcontainer/postCreateCommand.sh",
"remoteUser": "root",
我使用了以下 ./.devcontainer/postCreateCommand.sh
:
#!/usr/bin/env bash
set -ex
apt-get update && apt-get install -y man git && rm -rf /var/lib/apt/lists/*
pip install --requirement ./.devcontainer/dev_pip_requirements.txt
一般来说,root
不推荐用于生产环境。
这里是关于postCreateCommand
的更多信息
关于docker - 有没有办法在 VSCode Devcontainers 中调试 PostCreateCommand?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65909781/
我是一名优秀的程序员,十分优秀!