【发布时间】:2020-02-25 17:24:19
【问题描述】:
我已经在 Docker 容器中设置了 Jenkins,我正在尝试使用该服务器访问我的私有 Bitbucket 存储库。我需要将我的 SSH 密钥复制到该容器中,以便 Bitbucket 识别它,然后我可以让我的 Jenkins 服务器访问该存储库。
我的 docker-compose.yml 文件中有以下内容:
services:
jenkins:
build: .
volumes:
- jenkins-data:/var/jenkins_home
environment:
- SSH_PRIVATE_KEY=$(cat ~/.ssh/id_rsa)
ports:
- "8080:8080"
- "50000:50000"
volumes:
jenkins-data:
然而,echo $SSH_PRIVATE_KEY 给出了/.ssh/id_rsa,而不是存储在里面的值。我听说在 Dockerfile 中执行此操作的问题在于,它仍然可以在将要推送的图像的一层中查看。
我的问题是如何将SSH_PRIVATE_KEY 的值设置为我的文件内容的值?
我相信这可能与 How to set environment variable into docker container using docker-compose 重复,但该解决方案似乎对我没有任何改变。
【问题讨论】:
标签: docker docker-compose