node chaincode instantiate without internet access

Viewed 168

We are running fabric (1.4.4) in an essentially closed network (no direct internet access, only private docker/npm/maven registries requiring authentication are accessible through a proxy). While golang chaincode works just fine in this setup, node chaincode prove to be impossible to instantiate, as fabric-ccenv is executing npm install --production, which obviously won't work without internet access. In fabric 1.4, the only thing customizable about fabric-ccenv seems to be the image to be used.

But even if security would allow proxy settings, private registry addresses and credentials to be included in a custom fabric-ccenv image, some native npm builds (x509, grpc) seem to need direct internet access, as they are loading e.g. openssl header files or grpc pre-built binaries. Even if we were able to 'hack' that for a particular node chaincode, it would still preclude the use of arbitrary node chaincode, with arbitrary dependencies.

In fabric 2.0 it seems to be possible to build chaincode containers externally - is there any chance to make this work for fabric 1.4, too?

Are there any other ways to influence that node chaincode container build in fabric 1.4 that we might have missed?

0 Answers
Related