https://docs.docker.com/engine/install/ubuntu/ # #2023/11/10 ```bash for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done ``` ```bash # Add Docker's official GPG key: sudo apt-get update sudo apt-get install ca-certificates curl gnupg ``` > [!caution] > [[curl]]のインストールでエラーになる場合は、[[📝Ubuntu 22.04にcurlをインストールするとlibnghttp2-14の存在しないバージョンを要求されてエラーになる]] も参考に。 ```bash sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg # Add the repository to Apt sources: echo \ "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update ``` [[Docker]]に関するものをインストール。 ```console sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin ``` 動作確認。 ```console sudo docker run hello-world ``` # #2021/05/27 ```bash # 既存のDockerをアンインストール $ sudo apt-get remove docker docker-engine docker.io containerd runc # 必要なものをインストール $ sudo apt-get update $ sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ gnupg \ lsb-release \ cgroupfs-mount # リポジトリ登録 $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg $ echo \ "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null # Dockerのインストール $ sudo apt-get update $ sudo apt-get install docker-ce docker-ce-cli containerd.io # Dockerの起動 $ sudo service docker start # Dockerの動作確認 $ sudo docker run hello-world # rootユーザ以外でも実行できるようにする $ sudo cgroupfs-mount $ sudo usermod -aG docker $USER # ログインしなおして動作確認 $ sudo docker run hello-world ```