赞
踩
- # Add Docker's official GPG key:
- sudo apt-get update
- sudo apt-get install ca-certificates curl gnupg
- 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
- 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
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
安装完 Docker 后,可以运行一个简单的测试容器来验证 Docker 是否正常工作。
sudo docker run hello-world
如果看到来自 Hello from Docker!消息,表明已经成功安装并启动了 Docker Engine
sudo
Docker 的守护进程(daemon)以 root 用户身份运行,并通过 Unix 套接字(/var/run/docker.sock)与客户端(如 docker 命令行工具)通信。默认情况下,这个套接字的权限设置为只有 root 用户可以访问,因此普通用户需要使用 sudo 来运行 Docker 命令。
为了让普通用户可以不使用 sudo 运行 Docker 命令,需要将这些用户添加到一个特殊的用户组——docker 组中。这样,当 Docker 守护进程启动时,它会将这个 Unix 套接字的权限设置为 docker 组可读写,从而允许 docker 组中的用户运行 Docker 命令而无需 sudo。
创建 Docker 用户组
首先,创建一个名为 docker
的用户组。如果这个组已经存在,这一步会被忽略。
sudo groupadd docker
将当前用户添加到 Docker 组
将当前用户添加到 docker
组,以便该用户可以执行 Docker 命令。
sudo gpasswd -a $USER docker
激活组变更
使用 newgrp
命令使组变更立即生效
newgrp docker
测试 Docker 命令
运行 docker run hello-world
命令,检查是否可以在没有 sudo
的情况下成功运行 Docker 命令。
docker run hello-world
这是一个用于在 Docker 中支持 NVIDIA GPU 的工具
- # Configure the repository
- 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/stable/deb/nvidia-container-toolkit.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-get update
-
- # Install the NVIDIA Container Toolkit packages
- sudo apt-get install -y nvidia-container-toolkit
下载和安装 GPG 密钥
- curl -fsSL <https://nvidia.github.io/libnvidia-container/gpgkey> \\
- | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
这条命令从 NVIDIA 的 GitHub 页面下载 GPG 密钥,用于验证软件包的来源和完整性。并且将 ASCII 格式的 GPG 密钥转换为二进制格式,保存至指定的位置
配置软件源
- curl -s -L <https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.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-get install -y nvidia-container-toolkit
- sudo nvidia-ctk runtime configure --runtime=docker
- sudo systemctl restart docker
docker run -d --gpus=all -v ollama:/root/.ollama -p 11434:11434 --name ollama ollama/ollama
获取和管理 Docker 镜像相关操作(optional)
docker images
用于查看本地镜像及其详细信息。docker pull <image>
用于从镜像仓库拉取新镜像。docker inspect <image>
用于查看镜像的详细配置。镜像拉取机制
当执行 docker run
命令时,如果 Docker 在本地找不到指定的镜像,Docker 会自动尝试从配置的镜像仓库中拉取这个镜像
查看容器状态:
docker ps
配置和管理容器相关的操作(optional)
查看容器状态:
docker ps
停止和删除容器:
- docker stop ollama
- docker rm ollama
在容器内执行命令:
docker exec -it ollama <command>
刚才使用ollama/ollama镜像创建了一个叫做ollama的容器,并绑定了端口 11434
现在我想使用这个容器来运行llama3模型
docker exec -it ollama ollama run llama3
docker exec
命令:
docker exec
是用来在一个已经运行的容器内执行命令的。它允许你在容器内部启动一个新的进程,通常用于调试和管理。it
选项:
i
(interactive): 使容器的标准输入保持打开,以便你可以与容器内的进程进行交互。t
(tty): 为容器分配一个伪终端,这使得你可以以终端模式运行命令。ollama
:
docker run
命令启动了这个容器,并给它指定了名称 ollama
。ollama run llama3
:
ollama
应用程序,并加载了 llama3
模型。现在就可以和模型对话了
或者也可以尝试其他的模型library
参考:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。