gpt4 book ai didi

node.js - 如何在docker compose secret中使用主目录中的文件?

转载 作者:行者123 更新时间:2023-12-05 04:48:12 24 4
gpt4 key购买 nike

我正在尝试构建一个带有私有(private) Node 包的 docker 容器。我关注了this guide使用 secret 安全地引用 npmrc 文件来安装依赖项。我可以在使用如下命令直接构建图像时让它工作: .当运行 docker compose build 时,它就像没有 npmrc 文件一样,在尝试下载依赖项时给我一个 401。

我在下面提供了 Dockerfile 和 docker-compose.yml 的精简版本。

Dockerfile

# syntax = docker/dockerfile:1.2
FROM node:14.17.1

COPY . .

RUN --mount=type=secret,id=npm,target=/root/.npmrc yarn --frozen-lockfile --production

EXPOSE 3000

CMD [ "npm", "start" ]

docker-compose.yml

version: '3.7'
services:
example:
build: packages/example
ports:
- "3000:3000"
secrets:
- npm
secrets:
npm:
file: ${HOME}/.npmrc

最佳答案

问题似乎是我的 docker-compose.yml 指定了容器运行时与构建时间的 secret 。尚未实现对来自 docker compose 的构建 secret 的支持。这是出色的 PR:https://github.com/docker/compose/pull/7046 .

现在,我必须使用 docker build ... 构建图像并在 docker-compose.yml 中本地引用命名图像,而不是通过 docker compose 构建。

关于node.js - 如何在docker compose secret中使用主目录中的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68199826/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com