使用Docker运行现有的WordPress网站

我想在Docker上运行我现有的Wordpress站点进行本地开发。

这是我的docker-compose文件:

version: '2' services: mysql: image: mysql:5.7 volumes: - "./.data/db:/var/lib/mysql" ports: - "9306:3306" restart: always environment: MYSQL_ROOT_PASSWORD: example_password MYSQL_DATABASE: example_database_name wordpress: image: wordpress volumes: - "./:/var/www/html" links: - mysql ports: - "80:80" restart: always environment: WORDPRESS_DB_PASSWORD: example_password WORDPRESS_DB_NAME: example_database_name 

但是,我有Wordpress泊坞窗图片的问题是,它坚持要安装Wordpress。 如果你没有安装Wordpress,这很好,但如果已经安装了它,会导致很多问题。 这是特别令人沮丧,因为我组织我的文件夹,所以所有的内部wordpress文件都在一个单独的文件夹名为“wp”,“wp-content”在一个单独的目录。

所以我的问题是如何使用Docker运行我现有的 WordPress网站。

你最好的select,如果你想使用官方形象将是挂载wp-content目录不是整个www目录,如:

-v /path/to/my/blog/wp-content:/var/www/html/wp-content

并调整你有涉及你的“WP”目录的自定义设置。 WordPress需要一个特定的目录结构,所以取决于你为什么打破了你的文件,你可能会也可能不能使用默认的容器。 这样使用它的好处是可以通过更新容器来更新WP,并且保持所有文件的保护。

如果你需要的太过于自定义,如上所述,你可以尝试使用WP Dockerfile并进行编辑以适应你的需要,但是如果你可以使用标准的wp-content结构,它将使pipe理和维护变得更简单。

使用官方的WordPress图片,Docker将启动一个使用Debian作为基本系统的容器,并安装apache,php和wordpress。 如果您不喜欢,可以通过创buildDockerfile来创build自定义的图像。 您可以放弃任何不需要的组件。

作为一般build议,您应该能够将源代码作为卷装载到覆盖现有单个文件或完整目录的path上,以根据需要定制容器。