A. 개요

회사에서 Centos 7.9 서버에 docker ce를 설치할 일이 생겼는데 금융권 이직 후 오랜만에 인터넷이 안되는 오프라인 서버에서 설치를 진행해야 했다.

SCP로 외부 데이터는 가져올수 있는 상황이라 오프라인으로 현 시점 기준 최신 docker ce를 설치하는 방법을 정리해둔다.

B. 패키지 설치

필요 패키지 yum 설치

외부 yum repo가 아닌 수준에서는 설치가 가능하여 아래 패키지들을 사전 설치하였다.

yum -y install yum-utils device-mapper-persistent-data lvm2

docker ce 바이너리 설치

의존성 문제로 인해 아래와 같이 나눠서 진행하였다.

1. selinux 설치

  • 정보 : https://centos.pkgs.org/7/centos-extras-x86_64/container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm.html
  • 바이너리 : http://mirror.centos.org/centos/7/extras/x86_64/Packages/container-selinux-2.119.2-1.911c772.el7_8.noarch.rpm

2. containerd
– 바이너리 : https://download.docker.com/linux/centos/7/x86_64/stable/Packages/containerd.io-1.6.7-3.1.el7.x86_64.rpm

3. docker-scan-plugin & docker-ce-cli

sudo yum localinstall a.rpm b.rpm 형식으로 동시에 깔아야 한다는게 함정

  • 바이너리 : https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-scan-plugin-0.17.0-3.el7.x86_64.rpm

  • 바이너리 : https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-cli-20.10.9-3.el7.x86_64.rpm

4. fuse3-lib

  • 정보 : https://centos.pkgs.org/7/centos-extras-x86_64/fuse3-libs-3.6.1-4.el7.x86_64.rpm.html
  • 바이너리 : http://mirror.centos.org/centos/7/extras/x86_64/Packages/fuse3-libs-3.6.1-4.el7.x86_64.rpm

5. fuse-overlayfs

  • 정보 : https://centos.pkgs.org/7/centos-extras-x86_64/fuse-overlayfs-0.7.2-6.el7_8.x86_64.rpm.html
  • 바이너리 : http://mirror.centos.org/centos/7/extras/x86_64/Packages/fuse-overlayfs-0.7.2-6.el7_8.x86_64.rpm

6. slirp4netns

  • 정보 : https://centos.pkgs.org/7/centos-extras-x86_64/slirp4netns-0.4.3-4.el7_8.x86_64.rpm.html
  • 바이너리 : http://mirror.centos.org/centos/7/extras/x86_64/Packages/slirp4netns-0.4.3-4.el7_8.x86_64.rpm

7. docker ce & docker-ce-rootless-extras

  • 바이너리 : https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-rootless-extras-20.10.9-3.el7.x86_64.rpm
  • 바이너리 : https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-compose-plugin-2.6.0-3.el7.x86_64.rpm

8. docker-compose 플러그인

  • 바이너리 : https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-compose-plugin-2.6.0-3.el7.x86_64.rpm

docker compose 설치

https://github.com/docker/compose/releases 에서 리눅스용 최신 버전을 다운로드 받았다.

C. docker 권한 부여

루트가 아닌 사용자 계정에 docker 실행권한을 부여하는것은 이전글을 참고하자.

D. 오프라인 docker 이미지 save/load