我的package.json文件中有以下脚本
"docker-build": "docker build -t mouchin/my-image-name .",
"docker-push": "docker push mouchin/my-image-name:latest",
"deploy-server": "ssh root@myserverip 'docker pull mouchin/my-image-name:latest'",
"deploy": "npm run docker-build && npm run docker-push && npm run deploy-server"问题是我想隐藏mouchin/my-image-name和root@myserverip
使用某种环境,也许可以将变量保存在.env.prod中,但我不知道是否可以将保存在那里的变量直接读取到package.json中
发布于 2021-03-19 08:28:34
您可以在rpm脚本中使用环境变量,就像在命令行上执行命令一样(例如$SSH_HOST)。但是,这些变量需要直接在执行nom脚本的shell中设置。
现在,为了从加载的env文件中获取环境变量,您必须手动执行此操作。例如,使用如下代码片段:
if [ ! -f .env ]
then
export $(cat .env | xargs)
fi要在执行任何其他脚本之前执行此脚本,可以使用npm的内置lifecylce scripts。
也许,您还希望更改代码片段以加载一个或另一个.env文件,以防您有一个用于生产,另一个用于开发。您可能可以使用环境变量NODE_ENV来实现此目的,因为它在大多数设置中都会使用,但是最后这一步实际上取决于您的构建设置。
https://stackoverflow.com/questions/66700537
复制相似问题