【问题标题】:How to run this docker command on windows?如何在 Windows 上运行这个 docker 命令?
【发布时间】:2020-11-10 11:41:38
【问题描述】:

我有这个用于 mac os 的 docker 命令:

docker run --name digital-contracts-phpmyadmin -p 4599:80 -v $(pwd)/phpmyadmin/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php -v $(pwd)/phpmyadmin/config.user.extra.php:/etc/phpmyadmin/config.user.extra.php --network digital-contracts-mysql-net -d phpmyadmin/phpmyadmin

但是,当我在命令提示符 (cmd.exe) 上的 Windows 操作系统上运行它时,我收到此错误:

docker:来自守护进程的错误响应:create $(pwd)/phpmyadmin/config.user.inc.php:“$(pwd)/phpmyadmin/config.user.inc.php”包含本地卷名的无效字符,只允许使用“[a-zA-Z0-9][a-zA-Z0-9_.-]”。如果您打算传递主机目录,请使用绝对路径。

请帮我修改命令在windows os上成功运行

谢谢!

【问题讨论】:

  • pwd 是一个 POSIX 的东西。您的 shell 需要等效项,但需要指定:cmd.exe 或 PowerShell?
  • 我正在使用 cmd.exe!
  • 选项 1 是使用 bash 的 Linux 的 Windows 子系统。选项 2 是translate this to CMD notation

标签: reactjs windows docker cmd


【解决方案1】:

CMD:

docker run --name digital-contracts-phpmyadmin -p 4599:80 -v %CD%/phpmyadmin/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php -v %CD%/phpmyadmin/config.user.extra.php:/etc/phpmyadmin/config.user.extra.php --network digital-contracts-mysql-net -d phpmyadmin/phpmyadmin

PowerShell:

编辑:修复花括号

docker run --name digital-contracts-phpmyadmin -p 4599:80 -v ${pwd}/phpmyadmin/config.user.inc.php:/etc/phpmyadmin/config.user.inc.php -v ${pwd}/phpmyadmin/config.user.extra.php:/etc/phpmyadmin/config.user.extra.php --network digital-contracts-mysql-net -d phpmyadmin/phpmyadmin

【讨论】:

  • 嗨。感谢你的回答。我尝试使用 powershell 命令但是我得到 docker invalid reference format 错误!
  • 对不起,复制了原文,试试:docker run --name digital-contracts-phpmyadmin -p 4599:80 -v ${pwd}/phpmyadmin/config.user.inc.php:/etc /phpmyadmin/config.user.inc.php -v ${pwd}/phpmyadmin/config.user.extra.php:/etc/phpmyadmin/config.user.extra.php --network digital-contracts-mysql-net - d phpmyadmin/phpmyadmin
猜你喜欢
  • 2020-02-02
  • 2021-07-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-11-25
  • 2019-10-04
  • 2013-09-13
  • 2014-01-16
相关资源
最近更新 更多