홈페이지의 공식문서를 참고해서 우분투에 Docker를 설치할 수 있다.
하지만 처음 Docker를 공부하는사람은 공식문서가 어려울 수 있다. 나도 그래서 블로그를 많이 참고했는데, 그 중 아주 깔끔하게 나와있는 도커 설치법에 대해 설명하려 한다.
apt는 Advanced Packaging Tool의 약자로 패키지 관리 시스템 입니다. mac에서 사용하는 brew 혹은 node에서 사용하는 npm과 비슷하다고 보면 됩다. 이제 다음 명령어들을 순서대로 입력한다.
$ sudo apt-get update
$ sudo apt-get ca-certificates
$ sudo apt-get install gnupg
$ sudo apt-get install lsb-release
전자서명 및 암호화를 위해 사용되는 공개 키 기반의 암호화 기술이다. GPG는 개인키와 공개키로 구성되어 있으며 개인키는 키 소유자만이 액세스 할수있고 공개키는 다른 사용자가 암호화 하고 전자서명을 확인하는데 사용할 수 있다.
APT 패키지 관리자는 GPG키를 사용해 패키지를 인증하고 다운로드된 패키지가 변조되지 않았는지 확인한다. 이로서 신뢰할 수 있는 소스에서 제공되었는지 확인할 수 있다.
$ sudo mkdir -p /etc/apt/keyrings
$ curl -fsSL [https://download.docker.com/linux/ubuntu/gpg](https://download.docker.com/linux/ubuntu/gpg)
$ sudo gpg --dearmro -o /etc/apt/keyrings/docker.gpg
$ echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
echo 를 사용해서 Docker패키지를 다운로드 할 수 있는 APT저장소를 /etc/apt/sources.list.d/docker.list
파일에 추가한다.
echo 명령어는 deb레코드를 출력한다. deb레코드는 APT저장소에 대한 정보를 제공한다. 이 경우
[arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg]
옵션을 사용해 현재 시스템의 아키텍쳐와 /etc/apt/keyrings/docker.gpg
파일에 저장된 Docker GPG 키를 사용하여 패키지를 인증한다.
[https://download.docker.com/linux/ubuntu](https://download.docker.com/linux/ubuntu)
는 Docker 패키지가 호스팅 되는 원격 저장소 url이고 $(lsb_release -cs) 현재 Ubuntu 버전의 코드 이름을 가져온다.
마지막으로 |
기호를 사용해 echo
명령이 출력하는 내용을 sudo tee /etc/apt/sources.list.d/docker.list
명령에 전달한다. 이 명령은 표준 출력에서 데이터를 읽어 /etc/apt/sources.list.d/docker.list
에 쓴다.
$ sudo apt-get update
$ sudo apt-get install docker-ce docker-ce-cli contianer.io docekr-compose-plugin
$ sudo apt-get pdate
$ sudo apt-get install ./docker-desktop-4.11.0-amd64.deb
$ sudo docker version
결과
Client: Docker Engine - Community
Version: 20.10.17
API version: 1.41
Go version: go1.17.11
Git commit: 100c701
Built: Mon March 6 23:02:57 2023
OS/Arch: linux/amd64
Context: default
Experimental: true
-이런 비슷한 형식으로 나옴