Prisma部署-本地部署的身份验证错误

时间:2020-03-05 07:28:10

标签: docker prisma prisma-graphql nexus-prisma prisma-binding

我正在尝试使用在端口4466上运行的本地pyramida服务器来运行pyramida部署,但是当我运行Arizonaa部署时,我会收到此消息

Authenticating...
Opening https://app.prisma.io/cli-auth?secret=$2a$08$u3VSbu6GSxSV8l86BFs24O in the browser

Could not open the authentication link, maybe this is an environment without a browser. Please open this url in your browser to authenticate: https://app.prisma.io/cli-auth?secret=$2a$08$u3VSbu6GSxSV8l86BFs24O

这是棱镜服务器文件

mongodb:
   image: mongo:4.2
   container_name: mongodb
   volumes:
     - ./mongo-volume:/data/db
   ports:
     - "27017:27017"   

  prisma-server:
   image: prismagraphql/prisma:1.34.10
   container_name: prisma-server
   restart: always
   ports:
     - "4466:4466"
   environment:
     PRISMA_CONFIG: |
       port: 4466
       managementApiSecret: password@123
       databases:
         default:
           connector: mongo
           uri: mongodb://mongodb

这是我的pyramida.yml文件。我正在另一个dockerfile中运行prisma deploy。

endpoint: ${env:PRISMA_ENDPOINT}
datamodel: datamodel.prisma
secret: ${env:PRISMA_SECRET}
databaseType: document
generate:
  - generator: javascript-client
    output: ./src/generated/prisma-client
hooks:
 post-deploy:
  - prisma generate
  - npx nexus-prisma-generate --client ./src/generated/prisma-client --output ./src/generated/nexus-prisma

这是我的.env文件

PRISMA_SECRET=password@123
PRISMA_ENDPOINT=http://prisma-server:4466/app/dev
API_SECRET=password@123

1 个答案:

答案 0 :(得分:0)

这帮助我在Dockerfile内运行pyramida部署

FROM node:9-alpine

WORKDIR /app

COPY . .

# To handle 'not get uid/gid' error in alpine linux set unsafe-perm true
RUN apk update && apk upgrade && apk add bash \
    && npm config set unsafe-perm true \
    && chmod +x ./docker-scripts/entrypoint.sh \     
    && yarn install \
    && yarn global add prisma

EXPOSE 4000

CMD ["./docker-scripts/entrypoint.sh"]

entrypoint.sh

#!/bin/bash

# prisma deploy

 cd /prisma 
 prisma deploy

# go into the project...
 cd /app

 npm run start

docker-compose文件

services:
  prisma-client:
    image: image-name-here 
    container_name: prisma-client
    restart: always
    ports:
     - "4000:4000"
    environment:     
     PRISMA_ENDPOINT: http://prisma-server:4466      
    networks:
     - prisma

现在,一旦我完成了docker-compose pyramida客户端容器的创建。