【问题标题】:Docker container not running properly. Exit status Code 255Docker 容器未正常运行。退出状态代码 255
【发布时间】:2017-12-05 03:05:46
【问题描述】:

我正在尝试使用 docker 在我的 Mac 上启动我的本地主机服务器 (http://localhost:8080)。我使用以下 Dockerfile 创建了一个 docker 映像:

然后运行以下 docker 命令从我的目录创建镜像:

docker build -t packt-chp6 .

创建镜像后,我运行以下 docker 命令来启动我的 localhost 服务器:

docker run -d --name chat-app -v $PWD:/opt/app -p 8080:8080 packt-chp6 

问题

本地主机服务器无法连接。当我列出所有带有 -a 标志的容器时,我看到以下内容:

我已删除容器并从头开始重新构建,但仍然得到相同的结果。

感谢您的帮助。我很感激...

【问题讨论】:

  • 尝试使用 -it 选项运行 docker 以查看您是否能够进入 docker 并且您可以从容器中分离并使用 CTRL-p CTRL-q 键序列使其继续运行
  • 你也可以运行docker logs chat-app吗?
  • @zero298 我发现我的 server.php 脚本中有错误。我忘了包括一个类。我已经回答了下面的问题。在此发现之前,我尝试运行 docker stats and logs 命令,但没有收到任何输出。我的猜测是因为我在 docker run 命令中有 -d 标志,所以我没有机会看到任何错误。从 docker run 命令中删除 -d 标志,在我的终端屏幕上打印出错误。

标签: docker dockerfile


【解决方案1】:

我通过运行以下不带 -d 标志的 docker 命令解决了这个问题

docker run --name chat-app -v $PWD:/opt/app -p 8080:8080 packt-chp6 

发现我的 php 服务器脚本有错误,我没有包含“src/ChatComponent.php”文件。这是 server.php 的示例

require_once 'vendor/autoload.php';
require_once 'src/ChatComponent.php';

$app = new \Ratchet\App('localhost', 8080, '0.0.0.0');
$app->route('/chat', new \Packt\Chp6\Chat\ChatComponent);
$app->run();

在我包含文件后,它运行良好。谢谢

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-27
    • 2015-04-30
    • 2018-12-13
    • 2020-08-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多