916

Ubuntu22.04 DockerCE 容器内使用GPU

注意只有DockerCE版本才能使用GPU
如果教程无法使用了,请参考官方地址:nvidia-container-toolkit

安装nvidia软件源

distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list

or

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
sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt update

安装

sudo apt install nvidia-container-toolkit

检查是否成功

sudo which nvidia-container-runtime-hook

如果找到nvidia-container-runtime-hook则安装成功了

重启Docker

sudo systemctl restart docker

测试使用

docker run --gpus all nvidia/cuda:latest nvidia-smi

显卡监控

docker run -d --gpus all -p 9200:9400 nvcr.io/nvidia/k8s/dcgm-exporter:3.3.5-3.4.0-ubuntu22.04
1147

MacOS Catalina 手动安装openssl@3

前言

mac catalina 通过homebrew 安装 openssl 失败,被嫌弃系统太老,make test 测试不通过

I manually installed openssl@3 with the following commands

下载openssl,并解压

注意:brew安装软件时,看他下载的是什么版本,就手动下载什么版本

下载地址:

https://www.openssl.org/source/openssl-3.3.0.tar.gz

配置openssl

进入解压的目录,执行命令

689

MacOS使用Brew安装多个不同版本nodejs

卸载pkg安装的nodejs

sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}

更新brew软件库

brew update

安装node16

brew install node@16
778

Ubuntu22.04安装桌面系统

以下代码在root下执行,或使用sudo执行

apt update
apt install ubuntu-desktop

启动桌面系统

# 设置为开机启动
systemctl enable gdm3

# 启动桌面
systemctl start gdm3

# 查找桌面服务状态
systemctl status gdm3

备注:远程桌面 gnome-remote-desktop.service

685

清理Docker占用空间

在Linux上,当删除Docker容器后,它们占用的磁盘空间并不会立即释放。这是因为Docker使用了一种称为"Copy-on-Write"的机制,即在删除容器时,底层的镜像和文件系统层仍然存在于磁盘上。

清理未使用的镜像

这将删除未使用的镜像,包括已删除的容器的基础镜像

docker image prune -a

清理Docker卷(Volumes)

这将删除未使用的Docker卷,以释放磁盘空间

docker volume prune

清理Docker网络(Networks)

这将删除未使用的Docker网络,以释放磁盘空间

docker network prune