最近,我开发了一个使用docker在PHP中运行的应用程序,包括文件上传过程。
但是,当容器退出时,实际上传到服务器的文件将丢失。
您如何处理此事?
请告诉我如何使文件持久化。
例如:
最佳答案
这可以使用docker compose完成。通过将它们挂载到外部主机目录,您将可以访问容器中的文件。上传到wordpress的文件存储在wp-content/uploads
中,您可以使用以下示例docker-compose文件进行挂载:
version: '3'
services:
mysql-database:
image: mysql
container_name: mysql-database
volumes:
- ./mysql/docker-entrypoint-initdb.d/:/docker-entrypoint-initdb.d
ports:
- 3306:3306
wordpress-sites:
image: wordpress:custom
build:
context: ./wordpress
dockerfile: wordpress.dockerfile
container_name: wordpress-sites
links:
- mysql-database
depends_on:
- mysql-database
ports:
- 8080:80
volumes:
- ./wordpress/wp-content:/var/www/html/wp-content
有关volumes的文档应该可以为您提供帮助。