DOCKER:容器内正在运行的Shell脚本挂起

时间:2019-04-06 03:00:32

标签: docker lamp

  • 我目前正在尝试对从here克隆的codeigniter应用程序进行docker化。
  • 我使用了来自here的docker hub的基础灯堆栈图像

我的dockerfile当前看起来像这样:

FROM firespring/apache2-php

WORKDIR /var/www/spaceship
COPY . .

EXPOSE 8000

CMD ["bin/server.sh"]

但是当我尝试通过以下方式运行它时:

$ docker run -p 1234:8000 spaceship

它挂了。

我尝试验证我的基础映像是否与之不兼容:

$ docker run --rm -it --entrypoint=/bin/bash spaceship

root@fa09751cd081:/var/www/spaceship# ls

Dockerfile  README.md  application  bin  composer.json  composer.lock  favicon.ico  public  vendor

root@fa09751cd081:/var/www/spaceship# bin/server.sh

PHP 5.5.9-1ubuntu4.24 Development Server started at Sat Apr  6 02:51:44 2019
Listening on http://127.0.0.1:8000
Document root is /var/www/spaceship/public
Press Ctrl-C to quit.

但是显然它可以在本地容器内工作。

所以我想我的问题是如何为此编写正确的dockerfile?

1 个答案:

答案 0 :(得分:0)

您可以尝试在您的docker run命令中添加“ -d”吗?

docker run -d -p 1234:8000 spaceship