使用 docker 开发容器时 npm link 开发包
npm link dev packages when using docker dev containers
使用 npm link
在 docker 个开发容器中同时创作多个包
PkgA 是 PkgB 的依赖项,我正在对两者进行更改。目标是能够 link PkgB 中的 PkgA,而无需发布每个小更新并重新安装。 npm|yarn link 解决了这个问题,但我正在 docker 容器中开发。
1。在主机上创建一个目录作为全局仓库
(我喜欢制作一个 docker 目录并将我所有的卷都放在里面)
mkdir -p ~/docker/volumes/yalc
2。在两个(或更多)开发容器中安装卷
https://code.visualstudio.com/docs/remote/containers-advanced
devcontainer.json
...
"mounts": ["source=/Users/evan/docker/volumes/yalc,target=/yalc,type=bind,consistency=cached"],
...
并重建容器
3。安装 yalc 并发布包(在依赖 repo 容器中)
https://www.npmjs.com/package/yalc
npm i yalc -g
yalc publish --store-folder /yalc
--store-folder 告诉 yalc 将 repo 发布到我们的卷
4。 Link 到消费仓库中的包
首先考虑将 yalc 添加到 .gitignore
:
.yalc
yalc.lock
运行 link 命令
npm i yalc -g
yalc link PkgA --store-folder /yalc
其中 PkgA
是在 package.json
中定义的包的名称
使用 npm link
在 docker 个开发容器中同时创作多个包
PkgA 是 PkgB 的依赖项,我正在对两者进行更改。目标是能够 link PkgB 中的 PkgA,而无需发布每个小更新并重新安装。 npm|yarn link 解决了这个问题,但我正在 docker 容器中开发。
1。在主机上创建一个目录作为全局仓库
(我喜欢制作一个 docker 目录并将我所有的卷都放在里面)
mkdir -p ~/docker/volumes/yalc
2。在两个(或更多)开发容器中安装卷
https://code.visualstudio.com/docs/remote/containers-advanced
devcontainer.json
...
"mounts": ["source=/Users/evan/docker/volumes/yalc,target=/yalc,type=bind,consistency=cached"],
...
并重建容器
3。安装 yalc 并发布包(在依赖 repo 容器中)
https://www.npmjs.com/package/yalc
npm i yalc -g
yalc publish --store-folder /yalc
--store-folder 告诉 yalc 将 repo 发布到我们的卷
4。 Link 到消费仓库中的包
首先考虑将 yalc 添加到 .gitignore
:
.yalc
yalc.lock
运行 link 命令
npm i yalc -g
yalc link PkgA --store-folder /yalc
其中 PkgA
是在 package.json