在openshift在线部署自定义盒式磁带

时间:2014-10-24 09:38:51

标签: postgresql openshift

我一直在尝试将PostgreSQL数据库添加到我的OpenShift在线帐户中无济于事。我对如何解决这个问题感到有些困惑,我想我可以请某人指出我正确的方向。

我从https://github.com/crunchyds/openshift-postgres-cartridge克隆了源代码并上传到我的openshift在线仓库。我尝试运行包含的脚本 - 设置,控制等,但每次都会出错。

所以我认为这是部署它的错误方法。任何人都可以解释如何去做或发布一个有用的链接吗?

以下是错误消息:

source /usr/lib/openshift/cartridge_sdk/bash/sdk
'[' false == true ']'
OO_BASH_SDK=true
echo /var/lib/openshift/54492b5d4382ec8e52000428//app-deployments
/var/lib/openshift/54492b5d4382ec8e52000428//app-deployments
tar xzf /versions/postgresql94.tar.gz
tar (child): /versions/postgresql94.tar.gz: Cannot open: No such file or 
directory
tar (child): Error is not recoverable: exiting now
tar: Child returned status 2
tar: Error is not recoverable: exiting now
client_result 'Starting PostgreSQL server setup ...'
client_out CLIENT_RESULT 'Starting PostgreSQL server setup ...'
local type=CLIENT_RESULT
local 'output=Starting PostgreSQL server setup ...'
local 'IFS_BAK=     '
IFS=''
'[' -z 'Starting PostgreSQL server setup ...' ']'
for line in '$output'
echo 'CLIENT_RESULT: Starting PostgreSQL server setup ...'
CLIENT_RESULT: Starting PostgreSQL server setup ...
IFS=''
mkdir -p /var/lib/openshift/54492b5d4382ec8e52000428/app-
root/data//postgresql/9.4/data
mkdir -p /var/lib/openshift/54492b5d4382ec8e52000428/app-
root/data//postgresql/9.4/data/logs
echo 5432
./setup: line 22: /env/PGPORT: No such file or directory
echo /var/lib/openshift/54492b5d4382ec8e52000428/app-root/data//postgresql/9.4/data
./setup: line 23: /env/PGDATA: No such file or directory
echo /var/lib/openshift/54492b5d4382ec8e52000428/app-root/data//versions/postgresql94/bin
./setup: line 24: /env/OPENSHIFT_POSTGRESQL94_PATH_ELEMENT: No such file or directory
echo /versions/postgresql94/lib
./setup: line 25: /env/OPENSHIFT_POSTGRESQL94_LD_LIBRARY_PATH_ELEMENT: No such file or directory
echo /versions/bin
./setup: line 26: /env/OPENSHIFT_POSTGRESQL94_PATH_ELEMENT: No such file or directory
client_result 'Server setup completed successfully ...'
client_out CLIENT_RESULT 'Server setup completed successfully ...'
local type=CLIENT_RESULT
local 'output=Server setup completed successfully ...'
local 'IFS_BAK=     '
IFS=''
'[' -z 'Server setup completed successfully ...' ']'
for line in '$output'
echo 'CLIENT_RESULT: Server setup completed successfully ...'
CLIENT_RESULT: Server setup completed successfully ...
IFS=''

3 个答案:

答案 0 :(得分:1)

添加墨盒时,需要传入墨盒的URL。

您是否尝试在线运行此功能?

如果是这样,我不确定这是否应该在网上工作,所以我提出了一个Github问题让他们澄清。

如果它在网上可用,那么添加cartdidge的命令就像这个命令:

rhc cartridge add -a {your app name} http://reflector-getupcloud.getup.io/github/crunchyds/openshift-postgres-cartridge

答案 1 :(得分:0)

您需要确保OpenShift Online上的官方磁带支持PostgreSQL服务器的版本。您无需设置OpenShift Origin,但在使用在线之前可能会帮助您测试墨盒。

答案 2 :(得分:0)

多个错误消息引用了错误的工作目录:

  1. tar:/versions/postgresql94.tar.gz:无法打开:没有这样的文件或目录tar(子):
  2. / env / PGPORT:没有这样的文件或目录
  3. / env / PGDATA:没有这样的文件或目录
  4. / env的/ OPENSHIFT_POSTGRESQL94_PATH_ELEMENT
  5. / env的/ OPENSHIFT_POSTGRESQL94_LD_LIBRARY_PATH_ELEMENT
  6. / env / OPENSHIFT_POSTGRESQL94_PATH_ELEMENT:没有此类文件或目录
  7. 您的$ OPENSHIFT_PG_DIR似乎是" /"看起来不对劲。根据{{​​3}},此变量是根据清单中的短名称构建的:OPENSHIFT_ {Cartridge-Short-Name} _DIR。您是否更改了清单文件中的短名称?