반응형
개발용 서버로의 docker 활용
현재는 여러 시스템에서의 임베디드 개발을 주로 하고있다. 추후에 다시 작성하겠지만 도커로 개발환경을 구축하고 관리하면 엄청난 이점들이 있습니다. (여러가지 편의성과 확장성, 이식성 등등..)
git 을 사용하기 불편?
한번에 동시에 여러 시스템을 개발 하면서, 여러 컨테이너를 사용하다보면, 매 사용시마다 컨테이너의 ssh-key 를 각각 git 에 등록해야한다. (컨테이너 제작시 마다 mac 이 달라지며, 각 컨테이너에서 git 접근시 ssh-key 를 생성 및 접근해야함). 때문에 관리하는 컨테이너가 많아질수록 ssh-key 관리가 엄청 복잡하고 귀찮다.
ssh-key 공유를 통한 컨테이너의 git 접근
그래서.. 해당 방법을 추천? 한다. 물론 보안상으로는 해당 방법은 안좋을 수가있으나, 내부 컨테이너간의 ssh-key 교환이 크게 문제될까 싶다;
그냥 간단하다. host 의 ssh key 를 공유하는 방법이다.
docker-compose.yml
을 구성시 다음과같이 한다.
version: '3'
services:
your-service-d:
image: your-service-d
container_name: your-service-d
build:
context: .
dockerfile: ./Dockerfile
volumes:
- /your_id/.ssh:/root/.ssh:ro
restart: on-failure
- 볼륨을 다음과 같이 추가한다.
/your_id/.ssh:/root/.ssh:ro
- ro 파티션으로 하여, 컨테이너에서 수정하지 못하게 한다.
위와같이 할경우, 매번 컨테이너 생성시 마다. ssh key 를 만들고, 수정할 필요가 없다.
반응형