基础 OpenShift NodeJS Docker 镜像没有安装 iproute 包,所以我的目标是更改基础镜像来实现这一点。我要做的是:
$ git clone --recursive https://github.com/sclorg/s2i-nodejs-container.git
$ cd s2i-nodejs-container
$ git submodule update --init
我更改了 6/Dockerfile 以包含缺少的包:
INSTALL_PKGS="rh-nodejs6 rh-nodejs6-npm rh-nodejs6-nodejs-nodemon nss_wrapper iproute" && \
我构建图像:
$ cd 6
$ docker build -t myimage .
当我开始一个 shell 会话时,我得到了这个:
$ docker run -it myimage /bin/bash
': not a valid identifierble: line 2: unset: `ENV
is probably not installed.-nodejs6
ss 现在可用(iproute 包),但 node 和 npm 不可用:
$ ss
Netid State Recv-Q Send-Q Local Address:Port Peer Address:Port
$ node -v
bash: node: command not found
$ npm -v
bash: npm: command not found
我错过了任何步骤吗?帮助将不胜感激。