Computer >> 컴퓨터 >  >> 소프트웨어 >> 가상 기기

CentOS 7에 최신 버전의 Docker를 설치하는 방법

간단하지만 유용한 튜토리얼이어야 합니다. 최근에 이전 Docker 빌드에는 없었던 완전히 새로운 기능인 Docker 1.12에서 Swarm 모드를 사용하여 상당히 멋진 네이티브 오케스트레이션 구현을 보여 드렸습니다. 진행되는 동안 CentOS 7은 여전히 ​​리포지토리에 이전 버전이 있으며 테스트하고 싶다면 지금은 갇힌 것 같습니다.

이것은 언젠가는 필연적으로 해결되겠지만, 그렇다고 해서 이 글을 끝까지 읽지 않으셔도 됩니다. 결국 CentOS 리포지토리는 항상 공식 릴리스보다 뒤처지므로 타협하지 않고 운영 체제에 최신의 가장 뛰어난 것을 가져오려면 이 하우투가 도움이 될 것입니다. 나 후에.

저장소 설정

첫 번째 작업은 CentOS에서 Docker 저장소를 설정하는 것입니다. 우리는 이전에 이 작업을 여러 번 수행했으며 그런 의미에서 Docker도 예외는 아닙니다. 필요한 리포지토리 정보는 Docker 프로젝트 사이트에서 사용할 수 있습니다. 다음 텍스트를 docker.repo 파일에 복사하고 /etc/yum.repos.d 아래에 배치합니다.

[도커레포]
이름=도커 저장소
baseurl=https://yum.dockerproject.org/repo/main/centos/7
활성화=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg

다음 단계는 새 Docker 패키지, 가장 중요한 새 엔진을 설치하는 것입니다.

yum 설치 도커 엔진

그러나 RPM 충돌 문제(또는 여러 가지)가 발생합니다.

오류:docker-engine-selinux가 docker-selinux-1.10.3-46.el7.centos.10.x86_64와 충돌합니다.
오류:docker-engine이 docker-1.10.3-46.el7.centos.10.x86_64와 충돌합니다.
--skip-broken을 사용하여 문제를 해결할 수 있습니다.
다음을 실행할 수 있습니다:rpm -Va --nofiles --nodigest

거래 확인 오류:
docker-engine-1.12.1-1.el7.centos.x86_64 설치의 /usr/bin/docker 파일이 docker-common-1.10.3-46.el7.centos.10.x86_64 패키지의 파일과 충돌합니다

패키지 오류 해결

docker engine, selinux, common을 포함한 기존 Docker 패키지를 제거한 다음 새 패키지를 설치하기만 하면 됩니다. 이것은 수동 절차이지만 시간이 오래 걸리지 않습니다.

냠 제거 도커

그런 다음 새 것을 설치하십시오:

얌 설치 도커

오류가 발생하면 나머지 패키지를 수동으로 제거하십시오.

냠 제거 docker-common-1.10.3-46.el7.centos.10.x86_64

설치가 성공적으로 완료되면 버전을 확인하십시오:

도커 -v
도커 버전 1.12.1, 빌드 23cf638

또한 오류 없이 docker 서비스 명령을 실행할 수 있어야 합니다.

결론

이 튜토리얼이 더 간단할 수 있었던 유일한 방법은 내가 프로이센어로 역순으로 노래를 불렀을 때였습니다. 그러나 우리는 있습니다. 언젠가는 버전 1.12가 고대 버전이 될 것이지만 Linux 배포판의 약간 더 보수적인 서버 에디션을 실행 중이고 해당 저장소 데이터가 공식 릴리스 채널보다 약간 뒤쳐져 이 기사를 읽고 있다면 다음을 수행할 수 있습니다. 이 가이드를 사용하여 문제를 해결하고 CentOS와 같은 배포판이 제공하는 나머지 기능을 손상시키지 않고 최신 Docker 항목을 테스트하십시오.

어쨌든 새 리포지토리를 활성화하는 방법론은 새로운 것이 아닙니다. 우리는 CentOS를 제출하고 완벽하게 길들일 때 이것을 몇 번이고 반복했습니다. 그리고 리포지토리 충돌을 해결하는 것은 과거에 openSUSE 핌핑(pimping)을 할 때 겪었던 일입니다. 마지막으로 Docker가 실행 중이며 모두 정상입니다. 매우 간단합니다. 우아한. 효율적인. 더 많은 컨테이너 항목을 확인하고 계속 지켜봐 주십시오.

건배.