Docker 로컬 창고 구축

3464 단어 Docker
Docker 로컬 창고 구축
  • 1. 웨어하우스 미러 다운로드
  • 2. 창고 폴더 만들기
  • 3. 창고 가동
  • 4. 창고 시작 보기
  • 5.테스트
  • 6. 문제 해결
  • 6.1 프로필 생성
  • 소스 코드 GitHub 다운로드 주소:spring-boot-docker
    1. 웨어하우스 미러 다운로드
    중앙 창고에서 최신registry 창고를 끌어옵니다.
    docker pull registry
    

    2. 창고 폴더 만들기
    mkdir -pv /opt/docker/registry
    

    3. 창고 가동
    포트 매핑: 5000 로컬 파일 매핑: /opt/docker/registry
    docker run -d -p 5000:5000 --restart=always -v /opt/docker/registry:/var/lib/registry  registry
    

    4. 창고 시작 보기
    docker ps
    

    다음과 같은 출력을 볼 수 있습니다.
    docker ps                                                                                                                                        
    CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
    a7b23b6e8633        registry            "/entrypoint.sh /e..."   8 minutes ago       Up 6 minutes        0.0.0.0:5000->5000/tcp   distracted_jang
    

    액세스 주소:
    ip는 로컬 창고 ip주소입니다.
    curl http://192.168.234.97:5000/v2/_catalog
    

    5. 테스트hello-world 미러를 사용하여 테스트를 수행하여 로컬tag 생성
    docker tag hello-world 192.168.234.97:5000/hello
    

    로컬 창고로 밀어넣기
    docker push 192.168.234.97:5000/hello
    

    다시 보기:
    curl http://192.168.234.97:5000/v2/_catalog
    

    출력 디스플레이에 새로 추가된 창고가 있습니다.
    {"repositories":["hello"]}
    

    6. 문제 해결
    로컬 창고로 밀어넣기
    docker push 192.168.234.97:5000/hello
    

    오보
    The push refers to a repository [192.168.234.97:5000/hello]
    Get https://192.168.234.97:5000/v1/_ping: http: server gave HTTP response to HTTPS client
    

    원인 분석:
    클라이언트 http에 접근할 수 없습니다
    해결 방안, 프로필 만들기, 프로필 수정.이 창고에 사용되는 기계는 모두 이 조작을 실행해야 한다.
    6.1 프로필 만들기
    프로파일 생성
    touch /etc/docker/daemon.json
    

    구성 쓰기:
    echo '{ "insecure-registries":["192.168.234.97:5000"] }' >  /etc/docker/daemon.json
    

    docker 다시 시작
    systemctl restart docker
    

    로컬 창고로 다시 보내기 시도, 성공
    docker push 192.168.234.97:5000/hello
    

    출력은 다음과 같습니다.
    The push refers to a repository [192.168.234.97:5000/hello]
    428c97da766c: Pushed                                                                                                           
    latest: digest: sha256:7d6fb7e5e7a74a4309cc436f6d11c29a96cbf27a4a8cb45a50cb0a326dc32fe8 size: 524
    

    미러 tag 보기
    http://192.168.234.97:5000/v2/hello/tags/list 
    

    좋은 웹페이지 즐겨찾기