Install Docker
Ubuntuにおいて、Dockerをインストールするにはいくつかの方法を選択できますが、インストールする前にDocker Desktop
またはDocker Engine
のどちらを選ぶか決定する必要があります。公式チュートリアルはこちらにあります。
このセクションでは、Docker Engine
およびDocker CE
のインストールについて説明します。
この情報を基に、適切なDockerのインストール方法を選んでください。
こちらに掲載しているDockerのインストール方法は情報が古くなる可能性があります。
必ず公式サイトをチェックしてください⭐️''
NOTE
動作環境は以下のリストを満たしている必要があります。詳しくは公式サイトをご覧ください。
GPU
を使用しない条件に於いてはこの限りではありません。
GNU/Linux x86_64 with kernel version > 3.10
Docker >= 19.03 (recommended, but some distributions may include older versions of Docker. The minimum supported version is 1.12)
NVIDIA GPU with Architecture >= Kepler (or compute capability 3.0)
NVIDIA Linux drivers >= 418.81.07 (Note that older driver releases or branches are unsupported.)
これらの条件は以下の操作で確認できます。
# カーネルヴァージョン
uname -r
# Your docker version.
docker --version
# GPUアーキテクチャ
lspci | grep -ie nvidia
# Your NVIDIA linux driver version.
nvidia-smi
GPUのアーキテクチャのリストは以下を参照して下さい。
便利なスクリプトを使いましょう
Docker
のインストールは以下のスクリプトで行えます。
sudo apt update && sudo apt upgrade -y \
&& curl https://get.docker.com | sh \
&& sudo systemctl --now enable docker
マニュアルインストール
また、以下のように手動でDocker
をインストールもできます。
これらは予告なく更新されますので、正確な情報はDocker
の公式サイトをご覧ください。
# Uninstall old versions
sudo apt remove docker docker-engine docker.io containerd runc
sudo apt update && sudo apt upgrade -y
# Set up the repository
sudo apt install \
ca-certificates \
curl \
gnupg \
lsb-release
# Add Docker’s official GPG key:
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# Use the following command to set up the repository:
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 > /dev/null
# NOTE: If you get an error about apt/sources.list, you should comment out docker's line at sources.list.
# Install Docker Engine
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin
# NOTE: If you receive a GPG error when running apt update, run the following command and then try to update your repo again.
# sudo chmod a+r /etc/apt/keyrings/docker.gpg
# See bellow
# https://docs.docker.com/engine/install/ubuntu/#install-using-the-repository
sudo apt update
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin
If you want to confirm installed Docker, try the following command.
sudo docker run hello-world
nvidia-docker2
をインストールする
FACE01
をDocker
で利用するにはnvidia-docker2
が必要です。
nvidia-docker2
をインストールするには、NVIDIA official tutorialをご参照ください。
nvidia-docker2をかならずインストールしましょう。
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
&& curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
&& curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt update
sudo apt install -y nvidia-docker2
sudo systemctl restart docker
テストに関しては以下をご参照ください。
sudo docker run --rm --gpus all nvidia/cuda:11.0.3-base-ubuntu20.04 nvidia-smi
インストールが終わったら
If you don’t want to preface the docker command with sudo, create a Unix group called docker and add users to it.
sudo groupadd docker
sudo usermod -aG docker $USER
See here
When you want to delete all at once
See docker image prune
.
Japanese is here.
Also, you chose some manner as bellow.
Stop all containers
docker stop $(docker ps -q)
Delete all containers
docker rm $(docker ps -q -a)
Delete all images
docker rmi $(docker images -q)
Delete all except specific images
docker images -aq | grep -v 98c2341c70ce | xargs docker rmi
If you're PC is not installed NVIDIA GPU card
The Dockerfile you build must be Dockerfile_no_gpu
.
The settings in config.ini are limited to bellow.
headless = True
use_pipe = True
See 'To build FACE01 docker image without nvidia-docker2 package' section described here