이것은이 repo를 사용하여 또 다른 해결책입니다. dockito/vault, Docker 이미지 건물에 사용되는 비밀 저장소입니다.
나는 여기에 내 Dockerfile
, 나는이 볼륨에 내 개인 키를 연결하고 사용하는 프로세스로 실행하는 서비스
dockito/금고 및
우분투 이미지,
docker run -it -v ~/.ssh:/vault/.ssh ubuntu /bin/bash -c "echo mysupersecret > /vault/.ssh/key"
docker run -d -p 14242:3000 -v ~/.ssh:/vault/.ssh dockito/vault
를 만들고
FROM ubuntu:14.04
RUN apt-get update -y && \
apt-get install -y curl && \
curl -L $(ip route|awk '/default/{print $3}'):14242/ONVAULT >
/usr/local
/bin/ONVAULT && \
chmod +x /usr/local/bin/ONVAULT
ENV REV_BREAK_CACHE=1
RUN ONVAULT echo ENV: && env && echo TOKEN ENV && echo $TOKEN
RUN ONVAULT ls -lha ~/.ssh/
RUN ONVAULT cat ~/.ssh/key
는
당신은, 최종 빌드 크기를 줄이기 위해 고산 리눅스를 사용하고 이미지를 구축 할 수
,
그리고 끝났습니다. 이미지를 검사 할 수 있습니다. 비밀은 이미지 내부에 비어있는 것으로 저장되지 않았습니다.
docker run -it mohan08p/VaultTest ls /root/.ssh
이 빌드 시간에 스푸핑을 전달하는 좋은 기술이다. 추가적인 Vault 서비스를 계속 실행해야하는 단점이 있습니다.
바로 그게 문제였습니다. 정보가 레이어에 남아있었습니다. 당신이 스쿼시 이미지를 날릴 수 있다는 것을 몰랐습니다. 감사! –