在Docker中安装pgsql卷
我有一个基于centos:latest
的自定义Dockerfile centos:latest
安装我需要运行我使用的Web框架的软件。 我想扩展这个Dockerfile,这样我就可以添加PostgreSQL了,我想把pgsql的默认数据位置从/var/lib/pgsql
改为/var/www/data/pgsql
,这是一个挂载文件系统的卷。 我不确定是否可以在Dockerfile中执行此操作,或者是否需要在容器中运行某些脚本。 任何帮助,将不胜感激。
最终你需要改变postgresql.conf中的data_directory
。 这个在postgresql 9.5中的默认位置是/etc/postgresql/9.5/main/postgresql.conf
。
这可能看起来像:
- 在版本控制中保留自己的postgresql.conf文件,其中
data_directory = '/var/www/data/pgsql'
- 在你的Dockerfile中,安装postgresql
- 在你的Dockerfile中,
COPY postgresql.conf /etc/postgresql/9.5/main/postgresql.conf
,它会把你修改过的postgresql.conf移动到容器中,并replace默认的postgresql.conf。 这是假设在容器中的PG 9.5默认安装位置。
现在当你运行postgres时,它应该使用你的conf文件和/var/www/data/pgsql
数据目录。
编辑: 关于移动data_directory
- 如何重新创buildDocker容器?
- 如何在OS X上使用Docker运行Kafka?
- 如何连接到Docker上运行的PostgreSQL服务器
- 在Jelastic托pipe的Docker容器中的nginx上使用SSL
- 在Docker mem_limit中使用ArangoDb
- DOCKER如何更新从dockerfile或容器中更新主机文件?
- System.InvalidOperationException:“path基础只能使用IApplicationBuilder.UsePathBase()configuration。
- Docker镜像与架构优化?
- 在Visual Studio代码中debuggingDocker上的ASP.NET Core