Как запустить приложение laravel внутри контейнера Docker? - PullRequest
0 голосов
/ 18 сентября 2018

Я хочу получить результат Docker-контейнера из локальной среды, вот что я попробовал:

step1.создать образ php-composer с помощью dockerFile.

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

step2.создайте контейнер и выполните приложение 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 голосов
/ 18 сентября 2018

Есть несколько расширений php, которые необходимы для работы laravel, поэтому вам необходимо установить их тоже, это полный 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

, дайте мне знать, если это не сработало

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...