为什么我的 Dockerfile CMD 不起作用?

2024-05-24

所以在我的 Dockerfile 的末尾我有这样的内容:

WORKDIR /home
CMD django-admin startproject whattt
CMD /bin/bash

当我创建映像然后运行容器时,一切都按预期运行,没有错误,Docker 日志中也没有错误。然而,仍然有一些问题我似乎无法弄清楚。

第一个也是最重要的问题是 CMD django-admin startproject 实际上并没有创建任何项目。运行容器后,我可以手动运行 django-admin startproject 并且它按预期工作。但是,当我从 Dockerfile 将其作为 CMD 发出时,不会创建任何项目。

第二个问题是在 django-admin 行之后,我用 /bin/bash 添加了第二个 CMD,这样当我运行容器时,它会打开一个 shell(这样我就可以进去检查我的 django 项目是否已创建)。这会与之前的 django-admin 行产生问题或冲突吗?如果我删除这一行,那么当我运行容器时,我无法打开 shell 并检查我的 django 项目是否在那里?

任何帮助将不胜感激,谢谢。


“一个 Dockerfile 中只能有一条 CMD 指令。如果您列出多个 CMD,则只有最后一个 CMD 才会生效。”通过Dockerfile 参考 https://docs.docker.com/engine/reference/builder/#cmd。所以你的第一个CMD不会生效。

如果你想执行容器的 bash,请尝试docker exec命令,以及该文件 https://docs.docker.com/engine/reference/commandline/exec/提供示例命令,以便您可以遵循。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为什么我的 Dockerfile CMD 不起作用? 的相关文章

  • Linux 为一组进程保留一个处理器(动态)

    有没有办法将处理器排除在正常调度之外 也就是说 使用sched setaffinity我可以指示线程应该在哪个处理器上运行 但我正在寻找相反的情况 也就是说 我想从正常调度中排除给定的处理器 以便只有已明确调度的进程才能在那里运行 我还知道
  • 如何使用 mediawiki 的 api、curl 和 bash 登录?

    我对流程的理解 来自 mediawikis 登录手册https www mediawiki org wiki API 登录 https www mediawiki org wiki API Login 使用 MediaWiki 的 Web
  • 为什么 Git Bash 无法运行我的可执行文件?

    I am on git for windows https github com git for windows 吉特 巴什 我无法在命令行上运行可执行文件 Pedr Abc 07 MINGW64 c dev ls sqlite3 exe
  • 无法在docker容器中安装npm?

    我正在数字海洋服务器的 Docker 平台上部署一个简单的 Node js 应用程序 包 json name docker centos hello private true version 0 0 1 description Node j
  • 没有特权访问的 Docker VPN IPSec 客户端

    我有一个 mysql 数据库 只有在建立 VPN 连接后才能访问 IpSec shared secret 用户名 密码 所以我想运行一个隔离的docker容器 它将建立此连接并以某种方式代理 公开mysql端口 以便其他容器可以连接到它而不
  • cdc_acm:无法设置 dtr/rts - 无法与 USB cdc 设备通信

    我试图使用 pic24fj128gb206 枚举 usb cdc 设备 设备似乎已正确枚举 但是当我将设备连接到 Linux PC 时 我从内核收到以下警告消息 cdc acm 1 8 1 6 7 1 0 failed to set dtr
  • Bash:读入多个局部范围变量

    根据这个答案 https stackoverflow com a 1952480 582917 https stackoverflow com a 1952480 582917 我可以读入并因此分配多个变量 但是我希望这些变量是 bash
  • 如何在 Mac OSX Mavericks 中正确运行字符串工具?

    如何在 Mac OSX Mavericks 中正确运行字符串工具 我尝试按照我在网上找到的示例来运行它 strings a UserParser class 但我收到此错误 错误 Applications Xcode app Content
  • 如何检查主机是否在您的known_host ssh中

    我的脚本中使用以下命令 将主机添加到 ssh 中的已知主机 VAR2 expect c spawn ssh o StrictHostKeyChecking no REMOTE HOST USER REMOTE HOST IP expect
  • 如何使用 docker-compose 使 docker 容器与 localstack docker 容器通信?

    我正在 docker 容器内设置一个应用程序 我希望这个应用程序能够与 localstack 堆栈容器连接本地堆栈文档 https localstack cloud 当我跑步时docker compose up容器启动成功 我可以运行一个未
  • 从 Linux 内核模块中调用用户空间函数

    我正在编写一个简单的 Linux 字符设备驱动程序 以通过 I O 端口将数据输出到硬件 我有一个执行浮点运算的函数来计算硬件的正确输出 不幸的是 这意味着我需要将此函数保留在用户空间中 因为 Linux 内核不能很好地处理浮点运算 这是设
  • 如何使用 Docker for Mac 向 docker awslogs 驱动程序提供凭证?

    我正在尝试使用泊坞窗awslogs 驱动程序 https docs docker com engine admin logging awslogs 并收到以下错误 docker 来自守护程序的错误响应 无法初始化日志记录 驱动程序 NoCr
  • 研究缓冲区溢出时应该使用哪些版本的 GCC 或标志?

    最近 作为计算机工程专业的本科生 我一直在研究缓冲区溢出 出于兴趣 我开始研究缓冲区溢出 但在尝试在我的计算机上用 GCC 4 9 1 在 Debian Jessie 中 编译的我自己的 C 程序中实现它们时遇到了困难 我听说较新的编译器中
  • 如何将音量挂载到应用程序的源代码中?

    我有 kubernetes pod 我将应用程序源代码安装为 git 卷 我尝试了各种设置来将源代码放入 pod 中 而 git Volume 是我最终得到的设置 但现在我遇到了数据问题 我的应用程序中有一个文件目录 空 我需要在其中安装一
  • 使用.sh脚本设置环境变量

    如何编写 sh 脚本以在 Ubuntu 14 上全局设置环境变量 i e bin sh sets this in to master etc environment export DB HOST 123 我知道我可以运行这个脚本 它只会将其
  • 从核心转储中获取堆栈跟踪

    如何从核心转储文件中获取堆栈跟踪 该文件大约 14 mb 是在我的应用程序退出并显示 分段错误 后生成的 我使用的是红帽 5 5 gdb usr bin myapp binary corefile 然后 使用以下之一 gdb bt gdb
  • Ubuntu 的打包 - Web 应用程序

    Web 应用程序没有与 C 或类似文件不同的 make 文件 但是 它需要放置在特定的目录中 例如 var www 我是 Linux 打包新手 所以我的问题是 如何将我的应用程序打包到 deb 中 以便在安装时将其放入 etc myprog
  • 如何找到进程启动时使用的原始用户名?

    有一个 perl 脚本需要以 root 身份运行 但我们必须确保运行该脚本的用户最初没有以用户 foo 身份登录 因为它将在脚本运行期间被删除 那么 我如何查明自登录以来可能已多次起诉的用户是否在该链中的任何时间都没有模拟过 foo 我发现
  • 在 C 中运行 setuid 程序的正确方法

    我有一个权限为4750的进程 我的Linux系统中存在两个用户 root 用户和 appz 用户 该进程继承以 appz 用户身份运行的进程管理器的权限 我有两个基本惯例 void do root void int status statu
  • 通知管道右侧左侧故障?

    我越来越喜欢在 shell 脚本中的函数之间使用类似于生成器的模式 像这样的事情 parse commands da cmd file process commands 然而 这种模式的基本问题是 如果 parse command 遇到错误

随机推荐

  • 错误:没有这样的属性:类的manifestPlaceholders:com.android.build.gradle.management.ProductFlavor

    I use gradle experimental 0 4 0 我想在我的项目中使用 onesignal sdk 当我尝试使用此处示例中提到的代码构建项目时 我收到此错误 错误 没有这样的属性 类的manifestPlaceholders
  • 安卓市场API

    有谁知道Android市场是否有一个API 可以自动提交新应用程序 而无需手动填写市场表格 不 抱歉 没有程序化的方式来提交市场列表 据推测 这是一种反垃圾邮件发送者措施
  • 我如何(或者应该?)从 Grails 中的 SiteMesh 模板 (views/layouts/main.gsp) 访问服务层?

    我需要在我正在构建的网站的页脚中创建一个顶部列表 页脚是在默认的 SiteMesh 布局模板中创建的 views layouts main gsp 为了创建顶部列表 需要访问数据库 因此我将创建顶部列表所需的所有逻辑封装在服务类中 serv
  • 使用 AAACertificateServices 证书的域示例

    如何找到根证书为的域AAA证书服务 https support sectigo com Com KnowledgeDetailPage Id kA03l00000117cL 请注意 这是 Comodo 证书 为了准备一个其证书即将更改的依赖
  • ExpressJS 后端将请求放入队列

    我有客户端发送要由服务器执行的任务 但这些请求应该以类似队列的方式处理 知道我该怎么做吗 谢谢 express Router post tasks function req res This is the task to perform W
  • Android 上谷歌地图的缩放事件

    我们正在构建一个使用 Android 版谷歌地图 API 的应用程序 我有我的 MapController 和 MapView 并且我使用以下方法启用内置缩放控件 mapView setBuiltInZoomControls true 我现
  • Yii urlManager URL 中的语言

    我正在尝试使用以下语法向 url 添加语言 http www example com en site page view about http www example com en site page view about 到目前为止 我所
  • 如何将 application.properties 转换为地图的 application.yml

    我试过了 还是不行 请问我哪里出错了 application properties 工作正常 document contact name joe email email protected cdn cgi l email protectio
  • 更改 pyttsx3 语言

    当尝试使用 pyttsx3 时 我只能使用英语语音 我也希望能够使用荷兰语 我已经在 Windows 设置菜单中安装了文本转语音语言包 但我仍然只能使用默认的英文语音 我怎样才能解决这个问题 如果您想更改语言 您需要更改为支持您的语言的另一
  • 使用 writeLines 将变量写入文件

    我发现此链接对于理解如何将行写入文件非常有帮助 将文本行写入 R 中的文件 https stackoverflow com questions 2470248 write lines of text to a file in r 不幸的是
  • Microsoft 身份 - 撤销授权

    我正在开发一个 NET 应用程序 它可以使用 Graph API 代表用户发送电子邮件 提示用户对应用程序进行授权 然后使用获取的访问令牌来调用 Graph API 刷新令牌用于在旧访问令牌过期时颁发新的访问令牌 如下所述 https le
  • 检查 Unix 消息队列是否为空

    谁能告诉我如何检查消息队列中是否有消息 消息队列是在基于Linux的操作系统中用C语言实现的 我只是想检查在特定时间消息队列中是否有消息 只需使用以下命令即可检查消息数量 如果有 msgctl 函数 并在返回时检查 msqid ds 结构
  • 使用 ssh-keygen 创建 SSH 密钥不会创建 .ssh 文件夹

    我正在尝试使用 msysgit 创建我的公共 私有 rsa 密钥对 我运行这个命令 ssh keygen C email protected cdn cgi l email protection t rsa 一切看起来都很好 我收到消息了
  • 如何使用 PowerShell 发布 Azure 网站 (xxx.azurewebsites.net)?

    我已经在一个文件夹中准备好了我的网站 我知道如何使用 Azure PowerShell 创建站点 在Azure管理门户中 我只需要通过FTP复制站点文件 但我不知道如何使用 PowerShell 将我的网站文件推送到 Azure 有人可以透
  • 设计 ASP.NET 图表控件的样式

    使用 which 是一个子集 http blogs msdn com alexgor archive 2008 11 07 microsoft chart control vs dundas chart control aspx of th
  • SQL Server 登录错误:用户“NT AUTHORITY\SYSTEM”登录失败

    我创建了一个名为 schoolPool 的应用程序池并将其分配给我的 Web 应用程序 该池的标识已设置为 LocalSystem 当我尝试从应用程序内访问数据库 即打开 SQL 连接 时 我总是收到以下错误 Login failed fo
  • 敏捷与迭代和增量开发之间的区别[关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 敏捷开发与迭代增量开发有什么区别 敏捷是否被视为迭代和增量 一些信息表明敏捷是最新的迭代和增量 我需要对此做出明确的澄清 迭代 你不可能一次性完
  • 在非 WordPress php 页面之外显示 WordPress 帖子

    我需要在非 WordPress php 页面中显示 WordPress 博客文章 我已经尝试过以下代码
  • 计算连续有多少次和的结果为正(或负)

    第一部分 我有一个包含财务数据的数据框 33023 行 这里是指向 数据 https mab to Ssy3TelRs https mab to Ssy3TelRs df open 是标题的价格 df close 是收盘价 我一直想看看标题
  • 为什么我的 Dockerfile CMD 不起作用?

    所以在我的 Dockerfile 的末尾我有这样的内容 WORKDIR home CMD django admin startproject whattt CMD bin bash 当我创建映像然后运行容器时 一切都按预期运行 没有错误 D