Eu nunca usei o docker, então não posso comentar sobre isso, mas eu recomendaria (e estou usando isso em produção para bancos de dados grandes e muito usados por um longo tempo), na minha opinião, o caminho para entre em configurações complexas de clusters: corosync e marcapasso . Use o agente de recursos pgsql e um IP flutuante virtual , ao qual você conecta os clientes.
Se você nunca trabalhou com esse tipo de pilha de configuração / software, dê uma olhada em este tutorial ou esse ; adicionalmente aqui são slides (tome cuidado, é um .pdf, caso isso seja importante para você) sobre este tópico do PGConf. Rússia realizada no ano passado. Se você seguir esse caminho e encontrar problemas específicos, abra uma nova pergunta e faça um ping me (por exemplo, por meio de um comentário usando @gf_), talvez eu possa ajudar.
Editar: Há também um novo projeto chamado PAF automático de failover do PostgreSQL , que "[. ..] é um novo agente de recursos OCF dedicado ao PostgreSQL. Seu desejo original é manter um claro limite entre a administração do Pacemaker e do PostgreSQL, para manter as coisas simples, documentadas e ainda poderosas. [...] "O primeiro commit foi feito em fevereiro de 2016, por isso ainda é muito jovem, mas talvez isso valesse a pena também. (No entanto, eu não posso comentar nem julgar sobre isso, porque eu nunca usei isso.)