繁体   English   中英

使用 Docker 容器部署 Laravel

[英]Deploying Laravel with Docker containers

我计划使用 docker 容器部署我的 Laravel 应用程序。 我的应用程序需要以下组件:

  • MySQl服务器
  • nginx 服务器
  • cerbot 用于激活 ssl
  • Laravel 的队列工作者

由于该应用程序仍在开发中(可能会一直如此),它应该很容易更新(我将使用 GitLab CI/CD 自动完成)并且在更新期间它应该有尽可能少的停机时间。 此外,我希望能够托管应用程序的多个实例,因此只有 Laravel 的.env文件不同。 除了实时应用程序之外,我还想托管一个登台应用程序。

我目前的方法是为 MySQL 服务器创建一个容器,为 nginx 服务器创建一个容器,为队列工作者创建一个容器。 应用程序代码将是 nginx 服务器容器和队列工作容器中的一个层。 更新应用程序时,我将重建 nginx 容器和队列工作容器。
这是一个好方法吗? 还是有更好的方法来实现这一目标? 对于我的 mysql 服务器、nginx 服务器、php 版本来说,什么是一个好的方法,......在应用程序不停机的情况下保持最新状态?

docker 的主要思想是按容器划分您的应用程序。 所以是的,为一项服务配备一个容器是件好事。 在您的示例中,我建议将 MySQL 保留在一个容器中,将队列工作器保留在另一个容器中,依此类推。 结果,您将拥有每个服务的容器。 然后建议创建内部 docket 网络并将容器连接到它们。 另外,我建议使用 docker 卷来存储您的所有应用程序数据。 为了使它更容易,我建议配置使用 docker compose。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM