如何在 Google Cloud 运行 上 运行 WordPress?

How to run WordPress on Google Cloud Run?

Google云运行是新的。可以运行 WordPress docker吗?也许使用 gce 作为 mysql/mariadb 的数据库。找不到关于此的任何讨论

虽然我认为这是可能的,但是完成这个练习并不是很好地利用你的时间。云 运行 可能不是完成这项工作的正确工具。

更新 有人在博客上发布了关于此的教程(使用风险自负):https://medium.com/acadevmy/how-to-install-a-wordpress-site-on-google-cloud-run-828bdc0d0e96

这里有几点需要考虑;

  1. (更新:这不再是真的)目前 Cloud 运行 不支持本地连接到 Cloud SQL (mysql)。有一些技巧,例如在容器内旋转 cloudsql_proxy: 可以正常工作。

  2. 您需要事先准备好 wp-config.php 并将其烘焙到您的容器映像中。由于您的容器会不时被擦除,因此您应该安装您的博客(创建一个wp-config.php)并将生成的文件烘焙到容器图像中,这样当容器重新启动时,它不会丢失您的 wp -config.php.

  3. 持久存储可能是个问题:与第2点类似,重启容器会删除容器启动后保存到容器中的文件。您需要确保安装的插件、图像上传等内容不应该写入容器的本地文件系统。 (我不确定 wordpress 是否允许您将此类文件写入其他地方,例如 GCS/S3 存储桶。)要实现此目的,您可能最终会使用类似 https://wordpress.org/plugins/wp-stateless/ plugin or gcs-media-plugin.

    的东西

    写入云 运行 容器的本地文件系统的任何文件也计入容器的可用内存,因此如果您继续向其写入文件,您的应用程序可能 运行 内存不足。

长话短说,如果您可以确保您的 WP 安装没有 write/modify 本地磁盘上的文件,它应该可以正常工作。

我认为 Cloud 运行 可能不是这里工作的错误工具,因为它 运行 是“无状态”容器,而且要使 WordPress 无状态非常难,尤其是如果您安装 themes/plugins、配置等。更不用说,您的云 SQL 服务器不会是“无服务器”的,您将在它没有收到任何请求时为其付费。

(P.S。这将是一个很好的练习,可以尝试写一篇关于 post 的博客!如果你这样做,请将其添加到 awesome-cloudrun 存储库。)