[英]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 update
和php 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.