带有批量的Docker证书

时间:2019-09-02 17:40:26

标签: docker ubuntu volume

我需要与容器共享我的docker计算机证书,因此我使用了卷。不幸的是,它似乎不符合我的预期,因为容器找不到此文件。

这是我的Linux(Ubuntu)计算机上存在的问题。在我的macOS系统上,一切看起来都很好。我的方法正常工作并且文件存在。我试图修改路径,但没有帮助。

start-service.sh

docker build -t api-gateway-service .
docker run --name api-gateway-service -v /<absolute path to .docker>/machine/machines/manager1:/certs --net='host' --env-file env -d api-gateway-service

env

DOCKER_CERT_PATH=/certs

config.js


const certDir = process.env.DOCKER_CERT_PATH

const dockerSettings = {
  protocol: 'https',
  host: machine.substr(machine.indexOf(':', 0) + 3, machine.indexOf(':', 6) - 6),
  port: parseInt(machine.substr(-4), 10),
  checkServerIdentity: false,
  ca: fs.readFileSync(certDir + '/ca.pem'),
  cert: fs.readFileSync(certDir + '/cert.pem'),
  key: fs.readFileSync(certDir + '/key.pem'),
  version: 'v1.25'
}

我创建了容器和应用程序,试图从安装的卷中获取证书。但是随后抛出错误“错误:ENOENT:没有这样的文件或目录,请打开'/certs/ca.pem'”,因此出现了问题。

0 个答案:

没有答案