Docker가 사용하지 않는 이미지를 삭제하는 것에 대한 생각
6532 단어 docker
이것은 공식 성명을 읽고 싶다면 리소스 소비에 대한 Docker의 FAQ입니다.
Docker가 이러한 이동을 통해 운영 비용을 절감하려고 한다고 생각하지만 이는 비활성 컨테이너를 소유하고 있지만 Docker 요금제에 대한 비용을 지불하고 싶지 않은 사람들뿐만 아니라 온라인에서 컨테이너를 찾으십시오. 이러한 이미지 중 일부는 실제로 매우 가치가 있어 쉽게 다시 만들 수 없지만 제 생각에는 더 큰 문제는 이미지를 공유하려는 경우 삭제될 걱정 없이 어떻게 이미지를 공유할 수 있을까요? 이것이 제가 여기서 다루려고 하는 핵심 질문입니다.
옵션 1: 유료 요금제 구매
이것은 가장 매력적인 옵션은 아니지만 작동합니다. 유료 플랜의 다른 특전을 누리고 적어도 지불을 중단하고 다시 비활성화될 때까지 이미지를 영구히 보존합니다.
옵션 2: Github 패키지
가장 합리적인 대안이라고 생각합니다. Github 패키지는 작년에 출시된 상당히 새로운 제품으로 모든 종류의 릴리스를 게시할 수 있습니다. 이것은 저장소에 코드를 게시하는 것과는 달리 설치 및 사용할 준비가 된 라이브 번들이며 Rubygems 및 NPM에 제출되는 종류입니다. 당연히 이것은 컨테이너 이미지로도 확장되므로 Github 패키지를 공개 및 비공개로 패키지를 게시하는 방법으로 사용할 수 있습니다.
패키지
Docker Hub에 대한 배포를 모두 건너뛰고
docker
명령이 패키지를 Github 패키지로 직접 보내도록 할 수 있습니다. 그렇게 하면 비활성 상태로 인해 패키지가 손실되는 것에 대해 걱정할 필요가 없습니다.이 워크플로는 Github 패키지에만 게시됩니다.
name: Publish Docker image
on:
release:
types: [published]
jobs:
push_to_registries:
name: Push Docker image to Github Packages
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v2
- name: Push to GitHub Packages
uses: docker/build-push-action@v1
with:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry: docker.pkg.github.com
repository: my-org/my-repo/my-image
tag_with_ref: true
이 워크플로는 Github 패키지와 Docker Hub 모두에 게시되며 이 전환 기간 동안 두 위치 모두에서 이미지를 사용하는 것이 좋습니다.
name: Publish Docker image
on:
release:
types: [published]
jobs:
push_to_registries:
name: Push Docker image to multiple registries
runs-on: ubuntu-latest
steps:
- name: Check out the repo
uses: actions/checkout@v2
- name: Push to Docker Hub
uses: docker/build-push-action@v1
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_PASSWORD }}
repository: my-docker-hub-namespace/my-docker-hub-repository
tag_with_ref: true
- name: Push to GitHub Packages
uses: docker/build-push-action@v1
with:
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
registry: docker.pkg.github.com
repository: my-org/my-repo/my-image
tag_with_ref: true
약간의 주의
Github 패키지는 새로운 서비스이며 아직 많은 사람들이 컨테이너를 버리지 않았기 때문에 패키지를 영원히 보관할 뿐입니다. 그러나 페바이트의 패키지로 넘쳐나자 마자 Github는 공간이 부족한 경우 비활성 패키지도 제거하기로 결정할 수 있습니다. 그러나 가까운 장래에 대해 걱정할 필요가 없습니다.
그런 다음 다시 Github은 Microsoft의 소유이므로 무료 Azure 저장소를 사용할 수 있습니다.
결국 Docker Hub도 무제한 보존으로 이와 같이 작게 시작하여 오늘날의 큰 상태로 성장할 때까지. 따라서 저장 공간이 우리에게 무제한이라고 광고되지만 결국 사람들은 뒤에서 공간이 부족합니다.
Reference
이 문제에 관하여(Docker가 사용하지 않는 이미지를 삭제하는 것에 대한 생각), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/zenulabidin/thoughts-about-docker-deleting-unused-images-1n9m텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)