跳转到主要内容

一个用于使用Anaconda安装和配置Postgres数据库的Buildout配方。

项目描述

简介

birdhousebuilder.recipe.postgres 是一个 Buildout 配方,用于使用 Anaconda 安装和配置 Postgres 数据库。 Postgres 将作为 Supervisor 服务部署。

此配方基于 https://github.com/makinacorpus/makina.recipe.postgres

此配方由 Birdhouse 项目使用。

用法

此配方要求已安装Anaconda。它假定默认的Anaconda位置在您的家目录 ~/anaconda 中。否则,您需要设置 ANACONDA_HOME 环境变量或Buildout选项 anaconda-home

它在一个名为 birdhouse 的conda环境中,从conda通道安装了 postgresql 包。birdhouse环境的地址是 .conda/envs/birdhouse。它将一个用于 Postgres 的配置文件 ~/.conda/envs/birdhouse/etc/supervisor/conf.d/postgres.conf 部署到 Supervisor。可以使用 ~/.conda/envs/birdhouse/etc/init.d/supervisor start 启动Supervisor。

Postgres数据库文件默认位于 ~/.conda/envs/birdhouse/var/lib/postgres

此配方依赖于 birdhousebuilder.recipe.condabirdhousebuilder.recipe.supervisor

支持选项

该配方支持以下选项

anaconda-home

Buildout选项,用于Anaconda安装的根目录。默认:$HOME/anaconda。也可以使用环境变量 ANACONDA_HOME 设置默认位置。示例

export ANACONDA_HOME=/opt/anaconda

搜索优先级是

  1. anaconda-homebuildout.cfg

  2. $ANACONDA_HOME

  3. $HOME/anaconda

端口

Postgres使用的端口。默认:5433。

pgdata

数据库文件的路径。默认:~/.conda/envs/birdhouse/var/lib/postgres

initdb

Postgres初始化的选项。默认:--auth=trust

cmds

psql 命令用于设置数据库模式和用户。

示例用法

以下 buildout.cfg 示例使用Anaconda安装 Postgres

[buildout]
parts = postgres

anaconda-home = /home/myself/anaconda

[postgres]
recipe = birdhousebuilder.recipe.postgres
port = 5433
cmds =
     createuser -p 5433 --createdb --no-createrole --no-superuser --login demo
     createdb -p 5433 --owner=demo demo

使用Buildout安装后,使用以下命令启动 Postgres 服务

$ cd /home/myself/.conda/envs/birdhouse
$ etc/init.d/supervisord start  # start|stop|restart
$ bin/supervisorctl status      # check that postgres is running

作者

Carsten Ehbrecht ehbrecht at dkrz.de

变更历史

0.2.0 (2015-03-31)

  • 使用Anaconda中的postgresql

  • 重构Postgres设置

  • 使用subprocess而不是os.system

0.1.0 (2015-03-30)

初始发布。

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页