No description
Find a file
2026-04-12 23:30:09 +09:00
debian authorized_keys 파라미터 추가 2026-04-12 23:30:09 +09:00
workspace 초기화 2026-04-12 19:36:54 +09:00
docker-compose.yml authorized_keys 파라미터 추가 2026-04-12 23:30:09 +09:00
README.md authorized_keys 파라미터 추가 2026-04-12 23:30:09 +09:00

Debian + DinD compose

docker-compose.yml은 두 개의 서비스를 띄웁니다.

  • dind: Docker-in-Docker 엔진
  • debian: Dockerfile로 빌드되는 Debian 컨테이너. docker CLI와 sshd가 미리 설치되어 있고, 일반 실행과 SSH 세션 모두 DOCKER_HOST=tcp://dind:2375dind 엔진에 연결됩니다.
  • debian의 로그인 유저 설정은 docker-compose.yml에 고정되어 있습니다.
  • 기본값은 SSH_USER=dev, SSH_PASSWORD=devpass, USER_ID=1000, GROUP_ID=1000입니다.
  • SSH_PASSWORD는 unset일 때만 기본값 devpass를 사용합니다. 빈 문자열로 넘기면 비밀번호 로그인이 비활성화됩니다.
  • 공개키는 SSH_AUTHORIZED_KEYS(문자열) 또는 SSH_AUTHORIZED_KEYS_FILE(컨테이너 내부 파일 경로)로 주입할 수 있습니다.

실행

docker-compose up --build -d

다른 UID/GID를 쓰려면 docker-compose.ymlUSER_ID, GROUP_ID 값을 직접 수정하면 됩니다.

비밀번호 로그인을 끄고 키 기반 로그인만 쓰려면 예를 들어 아래처럼 실행하면 됩니다.

SSH_PASSWORD= \
SSH_AUTHORIZED_KEYS="$(cat ~/.ssh/id_ed25519.pub)" \
docker-compose up --build -d

호스트 파일을 마운트해서 authorized_keys를 주입할 수도 있습니다.

services:
  debian:
    environment:
      SSH_PASSWORD: ""
      SSH_AUTHORIZED_KEYS_FILE: /run/authorized_keys
    volumes:
      - ./ssh/authorized_keys:/run/authorized_keys:ro

접속

ssh dev@localhost -p 2222

기본 비밀번호는 devpass입니다. SSH_PASSWORD를 빈 문자열로 두면 비밀번호 인증이 꺼지고, 이 경우에는 주입한 공개키가 있어야 접속할 수 있습니다.

컨테이너 내부에서 Docker 확인

docker info
docker ps