如何在Docker容器中运行laravel应用程序?

时间:2018-09-18 05:11:17

标签: laravel docker

我想从本地获取docker容器的结果,这是我尝试过的。

步骤1。 使用dockerFile创建php-composer映像。

FROM php:7

RUN apt-get update 
RUN apt-get install curl
RUN curl -sS https://getcomposer.org/installer -o composer-setup.php
RUN php composer-setup.php --install-dir=/usr/local/bin --filename=composer
RUN apt-get install -y git

步骤2。 创建容器并执行laravel应用。

docker run -p 127.0.0.1:3000:8000 --name MyTest -dt php-composer to create a container
docker cp laravelApp/ d4bbb5d36312:/usr/
docker exec -it MyTest bash
cd usr/laravelApp
php artisan serve

之后,终端显示成功信息:

Laravel development server started: <http://127.0.0.1:8000>

但是当我在浏览器中访问127.0.0.1:3000时,我什么也没得到。

那是为什么?

1 个答案:

答案 0 :(得分:1)

laravel需要一些php扩展才能工作,因此您也需要安装它们,这是完整的dockerfile

FROM php:7
RUN apt-get update -y && apt-get install -y openssl zip unzip git
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
RUN docker-php-ext-install pdo mbstring
WORKDIR /app
COPY app /app # this copies all the app files to a folder called `app`
RUN composer install

CMD php artisan serve --host=0.0.0.0 --port=8000
EXPOSE 8000

然后运行容器,仅运行以下命令:

docker run -p 3000:8000 --name MyTest

然后转到http://localhost:3000

让我知道它是否无效