EC2上的Ubuntu 16.04 lts服务器。
基本docker-ce
安装[1]。
安装node.js [2],并克隆此存储库以轻松描述我的问题[3]。
安装docker-compose
。 [4]
从docker-compose up
运行the-main-repo
。
它可以正常运行。
Recreating the-main-repo_app_1 ... done
Attaching to the-main-repo_app_1
app_1 | + the-dependency@1.0.0
app_1 | updated 1 package in 0.833s
app_1 | calling dep:
app_1 | hello from the dependency here...!
the-main-repo_app_1 exited with code 0
node_modules干净地安装到了容器。 [5]
据我了解,挂载的作用是,它将挂载的目录从主机复制到映像上的目录。
现在,我的问题是,当我在main-repo上工作时,我不能使用npm link the-dependency
(当然,在从依赖项运行npm link
之后)。在当地发展依赖性。因为,npm链接似乎在docker容器中不起作用。
我不能只删除node_modules/the-dependency
和git clone the-dependency node_modules/the-dependency
,因为npm update
不允许任何依赖项成为git存储库[6]。它拒绝更新它们,输入gitify-dependencies
[7]似乎根本不适用于当前节点版本(8.x)!
我需要能够编辑依赖关系,并让docker容器使用最新代码运行。那么,如何将所有内容npm link
+ docker
+ git based dependency
组合在一起?
[1]-https://docs.docker.com/install/linux/docker-ce/ubuntu/
[2]-https://www.digitalocean.com/community/tutorials/how-to-install-node-js-on-ubuntu-16-04
[3]-http://github.com/gprasanth/the-main-repo/
[4]-https://docs.docker.com/compose/install/
[6]-https://github.com/APSL/react-native-version-number/issues/13