2017-11-22 5 views
0

ドッカー画像に(現在)基盤となっているnode-red docker画像を拡張しています。拡張(node.js)ドッカー画像にカスタムCA証明書を追加する方法

私はカスタムSSL証明書をドッカーイメージの証明書ストアに追加したいと考えています。今まで私は、次のようにこれをしなかった:

FROM nodered/node-red-docker 

ADD DigiCertCA.crt /usr/local/share/ca-certificates/ 
RUN update-ca-certificates 

ADD settings.js /data/settings.js 

RUN npm install node-red-contrib-ttn 
RUN npm install node-red-contrib-influxdb 
RUN npm install node-red-admin 
RUN npm install node-red-node-geohash 

CMD ["npm", "start", "--", "--userDir", "/data"] 

RUNは、root以外のユーザーnodeとして実行されるため、この画像は、失敗した建物。

Updating certificates in /etc/ssl/certs... ln: failed to create symbolic link '/etc/ssl/certs/DigiCertCA.pem': Permission denied 
The command '/bin/sh -c update-ca-certificates' returned a non-zero code: 1 

私は、このような操作は不可能であることを認識しています。しかし、カスタムCA証明書を使用して既存のイメージを拡張する有効な概念は何ですか?

答えて

1

なぜ、ユーザーをrootに切り替えて、certを追加するコマンドを実行して元に戻すのはなぜですか?

FROM nodered/node-red-docker 

ADD DigiCertCA.crt /usr/local/share/ca-certificates/ 
USER root 
RUN update-ca-certificates 
USER node-red 


ADD settings.js /data/settings.js 

RUN npm install node-red-contrib-ttn 
RUN npm install node-red-contrib-influxdb 
RUN npm install node-red-admin 
RUN npm install node-red-node-geohash 

CMD ["npm", "start", "--", "--userDir", "/data"] 
関連する問題