사용자 지정 Docker 이미지를 Docker 허브로 푸시
단순화를 위해 이 기사를 몇 개의 섹션으로 나누었습니다.
1. Docker 허브 계정 만들기:
먼저 도커 허브 계정이 필요합니다. 페이지https://hub.docker.com/를 방문하여 계정에 가입하세요. 무료 계정은 무제한 공용 저장소를 게시할 수 있도록 제공합니다. 개인 저장소가 필요한 경우 계정을 업그레이드해야 합니다. 계정의 사용자 이름은 중요합니다. 리포지토리의 이미지에 액세스하려면 다음을 사용해야 합니다.
Docker pull <username>/<repository name>:<tag>
태그를 전달하지 않으면 최신 이미지를 가져옵니다.
2. 액세스 토큰 생성:
docker cli에서 docker 허브 계정에 로그인하려면 계정의 사용자 이름과 암호를 사용할 수 있지만 이렇게 하면 계정의 전체 액세스 권한을 얻게 되며 암호를 변경하는 경우 다시 로그인해야 합니다.
권장 접근 방식은 액세스를 제한할 수 있도록 액세스 토큰을 사용하기 위해 cli에서 도커 허브에 로그인하는 것입니다.
계정 설정 > 보안으로 이동합니다. 내 경우에는 일부 기존 토큰이 표시되지만 귀하의 경우에는 비어 있을 수 있습니다. 이제 새 액세스 토큰을 클릭합니다.
읽기 및 쓰기를 원하므로 읽기 및 쓰기를 선택할 수 있지만 삭제도 수행하려면 해당 권한을 사용하고 생성을 클릭하십시오. 생성 후 토큰을 표시하고 복사하여 안전한 장소에 보관하면 다시 표시되지 않습니다.
3. Docker 레지스트리에 로그인합니다.
docker login -u <username> -p <accesstoken or account password>
또는 실행 명령
docker login
을 실행하면 사용자 이름과 비밀번호를 묻습니다.The recommended approach is ,To increase security, use the - password-stdin flag to instruct Docker to read your password from STDIN. This lets you pipe in a password file, preventing plain text from being captured in your shell history and CI job logs.
cat password.txt | docker login - username <username> - password-stdin
여기서 passwor.txt에 액세스 토큰 값을 저장했습니다.
4. 맞춤형 이미지 구축:
nginx를 기본 이미지로 사용하는 매우 간단한 예가 있습니다. 여기에 예가 있습니다. Git Repo Link
샘플 html 파일만 있으면 됩니다. 그런 다음 Dockerfile을 만들고 두 파일을 같은 폴더에 보관해야 합니다.
Dockerfile 코드:
FROM nginx:latest
COPY index.html /usr/share/nginx/html
이 도커 파일에서 최신 nginx 이미지를 가져오고 그 위에 sampleindfex.html을 html 폴더에 복사하고 사용자 지정 이미지를 빌드해 보겠습니다.
docker build -t my-custom-nginx .
위의 명령에서 빌드 컨텍스트를 현재 폴더로 전달하여 이미지를 빌드하므로 전달합니다. (점).
산출:
5. 태그를 지정하고 이미지를 컨테이너 레지스트리에 푸시합니다.
이제 로컬로 생성된 이미지에 docker 허브 사용자 이름과 사용자 지정 이미지 이름을 태그로 지정합니다.
docker tag my-custom-nginx nitin27may/my-custom-nginx:1.0
docker push nitin27may/my-custom-nginx:1.0
위 명령에서 'nitin27may'는 내 계정 이름이고, 'my-custom-nginx'는 도커 허브의 저장소 이름이고 '1.0'은 태그이므로 전체 태그는 'nitin27may/my-custom-nginx:1.0'입니다.
아래는 내 계정의 Docker 허브 스크린샷입니다.
다음 글에서는 GitHub Action을 사용하여 이를 자동화하는 방법에 대해 설명하겠습니다.
제안이나 질문이 있으시면 저에게 연락해 주십시오.
Reference
이 문제에 관하여(사용자 지정 Docker 이미지를 Docker 허브로 푸시), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/nitin27may/pushing-custom-docker-image-to-docker-hub-5ado텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)