Docker部署WordPress后,如何找到并编辑网站文件?
解决Docker部署WordPress后找不到网站文件目录的问题
你当前的问题根源是使用了Docker命名卷而非主机绑定挂载,所以你在项目目录下找不到wp_data文件夹——命名卷由Docker统一管理,存储在Docker的系统目录中,而非本地项目文件夹。
解决方法分三种,按需选择:
1. 直接查看/编辑命名卷中的文件
先找到命名卷的实际存储路径:
- 查看当前项目的命名卷列表:
你会看到类似docker volume lsyour-project-name_wp_data的卷名(your-project-name是docker-compose所在文件夹的名称) - 查看该卷的详细信息,获取挂载路径:
输出中的docker volume inspect your-project-name_wp_dataMountpoint字段就是该卷在主机上的实际存储路径,直接前往该路径即可编辑文件。
注意:这种方式不推荐长期使用,因为路径不直观,且Docker版本升级或配置变更可能导致路径变化。
2. 改为主机绑定挂载(推荐)
修改docker-compose.yml,将命名卷改为本地目录挂载,这样你的项目目录下就会出现wp_data文件夹,且内容与容器同步:
- 停止当前运行的容器:
docker compose down - (可选但强烈推荐)备份现有命名卷中的网站文件到本地:
docker run --rm -v your-project-name_wp_data:/source -v $(pwd)/wp_data:/target busybox cp -av /source/. /target/ - 修改docker-compose.yml中wordpress服务的volumes配置:
将原来的
替换为volumes: - wp_data:/var/www/html
同时删除文件末尾的volumes: - ./wp_data:/var/www/htmlvolumes:区块下的wp_data:(因为不再使用命名卷) - 调整本地
wp_data文件夹的权限(避免容器无法写入文件):
(WordPress容器内运行的用户uid为33,对应主机的www-data用户)chown -R 33:33 wp_data - 重新启动容器:
此时你可以直接在项目目录的docker compose up -dwp_data文件夹中编辑网站文件,修改会同步到容器中。
3. 直接进入容器编辑文件
如果只是临时修改,可直接进入容器内部编辑:
- 查看WordPress容器的名称:
docker ps - 进入容器的bash环境:
docker exec -it your-wordpress-container-name /bin/bash - 容器内的网站文件存储在
/var/www/html目录,可直接编辑。
注意:这种方式的修改不会持久化到本地,容器删除或重建后修改会丢失,仅适合临时调试。
内容的提问来源于stack exchange,提问作者Dazeh
相关产品推荐
相关产品推荐

