我们将作用域 js 包发布到私有注册表(由我们使用 Verdaccio 管理)。
这意味着在我们的生产环境中,我们需要对我们的私有注册表进行身份验证才能使用yarn install
. 最简单的方法是什么?
我们将作用域 js 包发布到私有注册表(由我们使用 Verdaccio 管理)。
这意味着在我们的生产环境中,我们需要对我们的私有注册表进行身份验证才能使用yarn install
. 最简单的方法是什么?
如果您不能或不想使用.env
文件,但您已经拥有.yarnrc.yml
带有注册表 url 的文件,如下所示:
npmScopes:
yourScopeName:
npmRegistryServer: 'https://...'
然后您可以使用yarn config set
命令添加npmAuthToken
带有令牌值的键,例如:
// $REGISTRY_TOKEN is an ARG variable you pass to Docker
ARG REGISTRY_TOKEN
RUN yarn config set 'npmScopes.yourScopeName.npmAuthToken' "$REGISTRY_TOKEN"
yarnPath: ".yarn/releases/yarn-berry.cjs"
nodeLinker: node-modules
npmScopes:
customScope:
npmRegistryServer: ${NPM_REGISTRY}
npmAlwaysAuth: true
npmAuthToken: ${NPM_TOKEN}
#docker-compose.yml
version: '3.7'
services:
server:
image: node:14
environment:
NPM_REGISTRY=https://private-registry
NPM_TOKEN=PUT_YOUR_TOKEN_HERE
ports:
- "3000:3000"
volumes:
- .:/var/app
command: "yarn run dev"
您还可以将环境变量放在.env
文件中并将其添加到.gitignore
添加范围包
docker-compose run --rm server yarn add @customScope/test-package
安装
docker-compose run --rm server yarn install