Pergunta

Eu recebo uma 503, mas sem erros no log quando tentar hospedar meu keystone.js aplicação no openshift, alguém já foi hospedado um keystone aplicativo com eles?Tudo funciona bem no localhost.

Eu estou usando uma instalação nova do keystone.js com a nenhum blog ou cloudinary.

Foi útil?

Solução

Fornecimento de muito pouca informação para lhe dar uma resposta definitiva.Quais são as opções que você passar para keystone.init()?Você está usando dotenv?Se assim for, o que você está lá?Você definir as variáveis de ambiente usando rhc set-env?

Eu pergunto porque um comum (embora não por agora o único) culpado do erro 503 no Node.js aplicações no OpenShift é um número de porta substituindo OpenShift é.Keystone olha process.env.PORT antes de ele examina process.env.OPENSHIFT_INTERNAL_PORT.Então, se você tem PORT definido no seu .env ou com rhc set-env ele terá precedência sobre OPENSHIFT_INTERNAL_PORT.

Me deparei com uma pergunta similar, sobre o KeystoneJS Grupo Do Google.Nesse outro caso, o desenvolvedor tinha adicionado uma MONGODB cartucho para a sua aplicação, mas não tinha definir a seqüência de conexão para o cartucho em Keystone.

Se este é o seu caso, você precisa definir o Keystone mongo opção Keystone.init() ou usando Keystone.set('mongo', 'connection_sring').Quando você criou o cartucho que você tem uma url e algumas credenciais.OpenShit passa-los para o seu aplicativo em variáveis de ambiente.Você pode construir o mongo seqüência de caracteres de conexão da seguinte forma:

var connectionString = process.env.OPENSHIFT_MONGODB_DB_USERNAME + ":" +  process.env.OPENSHIFT_MONGODB_DB_PASSWORD + "@" + process.env.OPENSHIFT_MONGODB_DB_HOST + '/' + process.env.OPENSHIFT_APP_NAME;

keystone.set('mongo', connectionString);

or 

keystone.init({
  ...
  mongo: connectionString,
  ...
});

Ou você pode usar rhc set-env para definir o MONGO variável de ambiente da seguinte forma:

rhc set-env MONGO=http://{username}:{password}@{connection url}/{dbname} -a your_app_name

O connection url acima é a que você tem de OpenShift quando você criou o cartucho.Se parece com um MONGODB url (por exemplo, mongodb://127.6.85.129:27017/).

Estes são apenas os meus melhores estimativas, dado que a sua pergunta é um pouco mais fino em detalhes.Você pode querer postar mais alguns detalhes para que possamos avaliar de forma mais exata o seu problema.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top