docker - Prisma deploy - 本地部署的身份验证错误
问题描述
我正在尝试使用在端口 4466 上运行的本地 prisma 服务器运行 prisma deploy,但是当我运行 prisma deploy 时,我收到此消息
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
这是我的 prisma.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
解决方案
这帮助我在 Dockerfile 中运行 prisma deploy
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"]
入口点.sh
#!/bin/bash
# prisma deploy
cd /prisma
prisma deploy
# go into the project...
cd /app
npm run start
码头工人撰写文件
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 prisma 客户端容器也被创建了。
推荐阅读
- caching - 写入分配策略中的读取到缓存
- flutter - 点击文本或其他小部件时如何触发单选按钮?
- tensorflow - 如何划分NoneType形状的张量?
- google-apps-script - 脚本下方可以从电子表格 A@ 单元格中获取 where 子句
- excel - 尽管清除数据,UsedRange.Rows.Count 不显示 0
- spring-cloud-stream - 禁用 Spring Cloud Stream Rabbit 进行测试
- excel - 如果 X 则在同一行中查找 Y (Excel)
- mongodb - Mongodb GridFS读取返回空内容
- python - 主动导航栏 BOOTSTRAP v4
- visual-studio - Visual Studio - 2019 无法开始调试