当前位置: 首页 > 知识库问答 >
问题:

设置带有等待bash的docker容器以安装npm模块

储承
2023-03-14

我尝试编写一个小的.sh来循环并再次启动/bin/bash,但是在我的入口点中使用它会产生一个错误,即它找不到.sh文件,尽管我知道它在容器中。

有什么想法吗?

共有1个答案

邓俊英
2023-03-14

可以使用Docker exec在给定容器中运行命令。

# Open an interactive bash shell in my_container
docker exec -it my_container bash

或者,您可以使用Docker run创建一个新容器来运行给定的命令。

# Create a container with an interactive bash shell
# Delete the container after exiting
docker run -it --rm my_image bash

此外,从这个问题中我得到的感觉是,您仍然在弄清楚Docker是如何工作的以及如何使用它的过程中。我建议在将入口点设置为/bin/bash时,使用此问题中的信息来确定容器退出的原因。找出它为什么不像您期望的那样运行将有助于您更好地理解Docker。

 类似资料:
  • 我们使用的标准做法是在版本控制中不包括node_modules。但是,在通过CI/CD管道时,我们必须在多个地方重新安装NPM依赖项,这会使所有操作变得非常缓慢。 有没有一种方法可以用Docker缓存NPM依赖项?我在谷歌搜索“Docker cache npm Dependencies”,2014年的第一个搜索结果是一个死链接。 没有其他有价值的东西出现。 一个解决方案是将node_modules

  • 我用docker安装了一个应用 homeassistant 在使用这个应用的过程中,发现错误: 现在,需要在homeassistant这个容器中,再安装一个模块,如何操作?

  • 问题内容: 我有一个Ubuntu VM,无法通过ssl(即https)连接到站点。如果URL以http开头,它可以从Internet成功下载工件。 npm install将通过https下载依赖项。反正有通过http下载吗? 问题答案: 尝试使用以下命令将注册表更改为http版本,而不是默认的https版本

  • 问题内容: 如何在构造函数或类主体中定义类? 例如我想要的: 或具有类body属性的示例: 我的解决方案(但我希望看到更优雅的方式) 问题答案: 最神奇的方法不旨在与工作/ -在一般情况下,你应该只使用专用异步魔术方法里面- ,,,和。在其他魔术方法中使用它或者根本无法正常工作(除非您使用此处其他答案中描述的一些技巧),否则将迫使您始终在异步上下文中使用任何触发魔术方法调用的方法。 现有的库通常以

  • 我正面临着一个星期左右都打不过的问题。事情是这样的 我们有基于基本的Yii2应用程序模板的Yii2应用程序。是主应用程序。我们的存储库托管在Bitbucket上。 下面是一些简化的部署过程: Bitbucket设置环境 运行,它将克隆应用程序的Vue部分 使用Composer安装应用程序的Yii2部分 使用npm安装应用程序的vue.js部分 删除临时文件并发送到服务器 问题发生在第四步。当我们需

  • 问题内容: 我是Docker的新手。我发现我们可以使用Dockerfile中的ENV指令设置环境变量。但是,如何在Dockerfile中为长命令设置bash别名? 问题答案: 基本上就像您经常做的那样,将其添加到用户的: 和往常一样,这仅适用于交互式外壳: 对于非交互式外壳,您应该创建一个小脚本并将其放在路径中,即: 如果您的别名使用参数(即-> ),则只需添加: