如何使用Docker容器运行多个单独的Wordpress网站

如何使用Docker容器运行多个单独的Wordpress网站,wordpress,docker,Wordpress,Docker,我是Docker的新手,目前正在尝试运行Wordpress网站(仅在本地机器上进行测试,而不是实际托管)。我目前有三个容器:一个linux发行版用来存储我的数据,由MySQL容器使用,最后是Wordpress容器 我可以成功访问和编辑我的Wordpress网站,但我想尝试在不同的端口上运行多个网站,我不确定如何做到这一点。我是否必须创建三个全新的容器,或者我是否可以使用相同的MySQL和数据存储容器,只是创建一个不同的wordpress容器 任何帮助都将不胜感激,谢谢 只要他们使用相同的数据库,

我是Docker的新手,目前正在尝试运行Wordpress网站(仅在本地机器上进行测试,而不是实际托管)。我目前有三个容器:一个linux发行版用来存储我的数据,由MySQL容器使用,最后是Wordpress容器

我可以成功访问和编辑我的Wordpress网站,但我想尝试在不同的端口上运行多个网站,我不确定如何做到这一点。我是否必须创建三个全新的容器,或者我是否可以使用相同的MySQL和数据存储容器,只是创建一个不同的wordpress容器


任何帮助都将不胜感激,谢谢

只要他们使用相同的数据库,或者至少使用相同的数据库服务器(顺便说一句,不要将您的数据库放在容器中,数据库写入磁盘会破坏使用容器的目的,除非容器永远不会改变位置),您最好为每个容器创建新的wordpress容器,他们可以共享容器的层,所以3个wordpress容器不会太大,唯一不同的层是站点的代码,所以这是最好的选择。

如果您使用的是官方wordpress图像,您可以使用相同的MySQL容器。只需为每个Wordpress容器提供不同的数据库。您可以使用环境变量为Wordpress容器定义数据库,例如:

docker run--name wordpress1--link一些mysql:mysql-p8080:80-e WORDPRESS\u DB\u name=wordpress1-d WORDPRESS

docker run--name wordpress2--link一些mysql:mysql-p8081:80-e WORDPRESS\u DB\u name=wordpress2-d WORDPRESS


docker run--name wordpress3--link一些mysql:mysql-p8082:80-e WORDPRESS\u DB\u name=wordpress3-d WORDPRESS

为什么你认为容器中的数据库会破坏使用容器的目的?据我所知,这是使用容器的关键原因之一。与为mysql服务器提供存储的纯数据容器相结合,它是我能想到的最可移植的解决方案之一。例如,它的核心示例是一个承载数据库的容器,我相信这是因为容器中的文件系统(我所说的默认fs)是短暂的。如果该容器的PID为1(很可能是DB守护进程),则存储的数据将丢失。此外,除非DB容器只有一台主机,否则不能保证DB容器始终位于同一主机上。Flocker和其他一些工具在解决这些问题方面做得很好,但是一个独立的容器并不能说明这一点。