CLI에서 도커 이미지를 Push하는 등 일부 도커 허브 작업을 수행하려면 도커 허브 계정으로 로그인이 필요합니다.
ID/Password 로그인
CLI에서 도커 허브 계정의 ID/Password를 사용하여 로그인 할 수 있습니다. 도커 허브 계정의 ID는 이메일 주소를 제외하고 입력합니다.
$ docker login -u [도커 허브 계정 ID] -p [도커 허브 계정 Password]
로그인이 성사되면 다음 경고 메시지가 출력됩니다.
WARNING! Using --password via the CLI is insecure. Use --password-stdin.
Login Succeeded
Logging in with your password grants your terminal complete access to your account.
For better security, log in with a limited-privilege personal access token. Learn more at https://docs.docker.com/go/access-tokens/
경고 문구에 따르면 Password를 직접 사용하는 것보다 Personal Access Token 사용을 권장하고 있습니다.
ID/Personal Access Token 로그인
Personal Access Token을 사용하여 로그인하면 더 높은 보안 수준으로 CLI 사용이 가능합니다. 우선 도커 허브에서 Personal Access Token을 생성합니다.
- 도커 허브에 로그인
- 우측 상단의 계정 이름(ID)을 클릭
- 드롭다운 리스트가 펼쳐지면 Account Settings로 이동
- 좌측 사이드바 메뉴에서 Security로 이동
- Security 페이지에서 Access Tokens > New Access Token 클릭
Access Token Description을 임의로 입력하고, 토큰 권한에 맞는 Access Permissions를 선택합니다. Access Permissions 지정 값에 따라서 토큰마다 Access 권한이 다르게 설정됩니다.
- Read, Write, Delete
가장 낮은 보안 수준을 갖습니다. 해당 토큰으로 접근하는 사용자는 계정의 모든 저장소에 대한 읽기(Pull), 쓰기(Push), 삭제(Del) 권한이 부여됩니다. - Read & Write
해당 토큰으로 접근하는 사용자는 계정의 모든 저장소에 대한 읽기(Pull), 쓰기(Push) 권한이 부여됩니다. - Read-only
해당 토큰으로 접근하는 사용자는 계정의 모든 저장소에 대한 읽기(Pull) 권한이 부여됩니다. - Public Repo Read-only
가장 높은 보안 수준을 갖습니다. 해당 토큰으로 접근하는 사용자는 계정의 Public 저장소에 대한 읽기(Pull) 권한만 부여됩니다. 이 토큰은 Private 저장소에 대한 접근이 불가능합니다.
입력을 마치고 Generate 버튼을 클릭하면 토큰 값이 자동으로 완성됩니다. 일단 Copy and Close 버튼을 누르고 나면 더 이상 토큰 값을 확인 할 수 없기 때문에 안전한 PC 등에 기입하여 관리해야 합니다.
더 이상 사용하지 않는 토큰은 삭제 할 수 있으며 여러 개의 토큰을 생성하려면 유료 구독 서비스를 신청해야 합니다. 이제 CLI로 이동하여 다음 명령문을 사용하여 로그인합니다.
$ docker login -u [도커 허브 계정 ID] -p [Personal Access Token]
CLI에서 도커 계정 로그아웃
다음 명령문을 사용하여 CLI에서 도커 계정을 로그아웃합니다.
$ docker logout
'DevOps & Infra > Docker' 카테고리의 다른 글
[Infrastructure/Docker] 도커 비지박스(BusyBox) 사용하기 (0) | 2022.04.02 |
---|---|
[Infrastructure/Docker] 도커 컨테이너에서 Windows 또는 MacOS 로컬 호스트에 연결 (0) | 2022.04.02 |
[Infrastructure/Docker] EXPOSE와 docker run -p의 차이점 (0) | 2022.03.13 |
[Infrastructure/Docker] 튜토리얼 살펴보기#008. 이미지와 관련된 더 많은 기능들 (0) | 2022.03.01 |
[Infrastructure/Docker] 튜토리얼 살펴보기#007. 도커 컴포즈(Docker compose) 사용하기 (0) | 2022.02.28 |