怎么访问使用 docker 部署到服务器的 laravel 的项目

我在服务器上部署了一个 laravel sail 项目 ,dockers 容器暴露的端口是 8000 ,我想要使用服务器的公网IP + 端口号 可以访问到我部署的项目,我应该怎么做

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
最佳答案

生产环境不能用Laravel Sail哈,Laravel Sail 的 http 服务是通过 php -S 创建的不是 php-fpm。
呃,上面随口一说被采纳了,我具体说一下吧。
如果不是生产环境,假设你映射出来的端口是 8000,那首先配置 Linux 服务器的防火墙,开放 8000 端口,然后配置云服务器厂商的安全策略选项,开放 8000 端口,然后访问 xxx.xxx.xxx.xxx:8000 就可以了,xxx.xxx.xxx.xxx 代表你的服务器公网ip。
如果是生产环境:

  1. Dockerhub 上面找一个 lnmp 镜像(例如:https://registry.hub.docker.com/r/2233466866/lnmp) ,pull 下来,配置好共享目录用于存放源码,run 起来就可以了。
  2. 将 nginx 镜像 + php 镜像 + MySQL镜像 + Redis 镜像组合编排起来使用。
  3. 自己写 Dockerfile 自定义镜像,把nginx、PHP、mysql、redis合到一个镜像里面使用。
2年前 评论
讨论数量: 3

主机的ip地址+端口就行

2年前 评论

生产环境不能用Laravel Sail哈,Laravel Sail 的 http 服务是通过 php -S 创建的不是 php-fpm。
呃,上面随口一说被采纳了,我具体说一下吧。
如果不是生产环境,假设你映射出来的端口是 8000,那首先配置 Linux 服务器的防火墙,开放 8000 端口,然后配置云服务器厂商的安全策略选项,开放 8000 端口,然后访问 xxx.xxx.xxx.xxx:8000 就可以了,xxx.xxx.xxx.xxx 代表你的服务器公网ip。
如果是生产环境:

  1. Dockerhub 上面找一个 lnmp 镜像(例如:https://registry.hub.docker.com/r/2233466866/lnmp) ,pull 下来,配置好共享目录用于存放源码,run 起来就可以了。
  2. 将 nginx 镜像 + php 镜像 + MySQL镜像 + Redis 镜像组合编排起来使用。
  3. 自己写 Dockerfile 自定义镜像,把nginx、PHP、mysql、redis合到一个镜像里面使用。
2年前 评论

都一样的 通信的原理相同

2年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!