簡體   English   中英

在 docker 容器中啟動 Laravel 服務器的小問題

[英]A little problem with starting Laravel server in docker container

[root@localhost ~]# docker ps -a
CONTAINER ID   IMAGE              COMMAND                  CREATED          STATUS          PORTS                               NAMES
369caac73fe5   php:7.4.6-apache   "docker-php-entrypoi…"   48 minutes ago   Up 23 minutes   80/tcp, 0.0.0.0:8000->8000/tcp      web_laravel

我已經在web_laravel docker 中部署了 Laravel 8.x源代碼。 運行composer updatephp artisan serve時我沒有收到任何錯誤。

# php artisan serve
Starting Laravel development server: http://127.0.0.1:8000
[Mon Jan  20:01:04 2021] PHP 7.4.6 Development Server (http://127.0.0.1:8000) started

但是,當我在瀏覽器中訪問192.168.1.xx:8000時,出現以下錯誤。

192.168.1.xx refuses to connect

我嘗試 ping 192.168.1.xx ,它工作正常。 但是,使用telnet時出現以下錯誤。

$ telnet 192.168.1.xx 8000
Trying 192.168.1.xx...
telnet: Unable to connect to remote host: Connection refused

在 docker 中啟動 Laravel 服務器似乎有點問題。 有人可以幫助我嗎?

您必須指定應該在哪里運行 laravel 應用程序,默認情況下它在 127.0.0.1 上運行嘗試通過php artisan serve --host 192.168.1.xx運行它

解決了:


據我所知,每個 docker 都有一個 IP 地址。 所以,我必須用 docker 容器的 IP 地址啟動服務器。 但是,為了避免docker 的動態 IP 地址錯誤,我使用0.0.0.0代替 web_laravel 0.0.0.0地址的web_laravel地址。因為本地機器上的所有 IPv4 地址。0 表示所有 IPv4 地址。 我使用以下命令。

php artisan serve --host 0.0.0.0

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM