我正在容器中运行WordPress并将其托管在ECS上。该数据库是RDS。
每次我构建一个新的Docker容器并部署到ECS时,都需要重新安装。然后说wp-config.php已经存在。
我很想将填充有数据库配置的wp-config.php复制到容器中,但这不是一个好习惯。
我该如何解决?
答案 0 :(得分:1)
嗯,一次又一次地手动进行配置绝对不是最佳实践;)
要在docker上拥有持久数据,可以使用volumes或bind mounts。在这两种情况下,数据都直接存储在支持文件系统上,而不是使用用于容器的overlay / union文件系统存储。
Volumes
由docker引擎处理,bind mounts
直接映射到您指定的位置。如果您使用的是docker compose,则您的docker-compose.yml
看起来像
version: "3.5"
services:
your_service:
image: your_image
volumes:
# bind mount example
- type: bind
source: /path/on/host
target: /path/inside/container
# volume example
- type: volume
source: your_volume
target: /path/inside/container
[...]
volumes:
your-volume:
docker run
的等效命令可以在docs.docker.com上找到。例如
docker run --volume=[host-src:]container-dest[:<options>] ...