Ubuntu人工智能訓練環境搭建

Ubuntu版本信息:

cat /etc/lsb-release
在這裏插入圖片描述

1、創建部署用戶

創建一個用戶,非root用戶即可,創建用戶示例:

# 創建用戶
sudo useradd -d /home/yeqinfang -m yeqinfang
sudo passwd yeqinfang

# 賦予免密sudo權限,可以不執⾏
echo "yeqinfang ALL = (root) NOPASSWD:ALL" |   sudo tee /etc/sudoers.d/yeqinfang 

sudo chmod 0440 /etc/sudoers.d/yeqinfang
	 
# ⽤戶使⽤bash shell,否則⽤戶沒有代碼補全功能
sudo chmod 0440 /etc/sudoers.d/yeqinfang
sudo chsh -s /bin/bash yeqinfang

# 切換⽤戶到部署⽤戶
su openailab
cd ~

2、安裝 python 和 pip3

後⾯安裝的rknn指定了python版本,必須使⽤python3.6的版本

sudo apt-get update && sudo apt-get install python3.6 python3-pip 
sudo ln -s /usr/bin/python3.6 /usr/bin/python3
sudo ln -s /usr/bin/pip3 /usr/bin/pip
# 如果不能安裝,再安裝apt源 
# sudo add-apt-repository ppa:jonathonf/python-3.6 
# sudo apt-get update 
# 驗證,確認 
python3

# 指定國內安裝源,可以加速依賴庫安裝 
mkdir ~/.pip 
vim ~/.pip/pip.conf

# 增加內容
[global] 
index-url = http://mirrors.aliyun.com/pypi/simple/
[install] 
trusted-host=mirrors.aliyun.com

3、安裝nvidia 驅動、cuda、cudnn

1、安裝nvidia驅動:
官方下載:https://www.nvidia.cn/Download/index.aspx?lang=cn

# 添加PPA 
sudo add-apt-repository ppa:graphics-drivers/ppa 
sudo apt-get update

# ⾃動安裝 
sudo ubuntu-drivers devices 
sudo ubuntu-drivers autoinstall

# 如果需要安裝指定版本,可以使⽤下⾯的⽅法 
# 通過<Tab>查找Y新的 驅動!我的顯卡是2080Ti ,需要到官方查看,安裝哪個驅動
# sudo apt-get install nvidia-driver-<Tab> 
# 安裝你需要的驅動 
# $ sudo apt-get install nvidia-driver-435 nvidia-settings
# 重啓 
reboot

# 輸⼊指令查看是否有信息輸出,確保是否正確安裝 
nvidia-smi

在這裏插入圖片描述
安裝完成之後,需要禁止系統更新,確保後續驅動不會自動更新。

2、安裝cuda和cudnn:
CUDA官方下載地址:https://developer.nvidia.com/cuda-downloads?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1604&target_type=runfilelocal
CUDNN官方下載地址:https://developer.nvidia.com/rdp/cudnn-download

(1)安裝CUDA

# 下載安裝包
wget http://developer.download.nvidia.com/compute/cuda/10.1/Prod/local_installers/cuda_10.1.243_418.87.00_linux.run
# 給⽂件賦予執⾏權限: 
chmod +x cuda_10.1.243_418.87.00_linux.run
# 執行安裝包:
sudo ./cuda_10.0.130_410.48_linux.run

運行之後,安裝只選中Tool,如下圖:
在這裏插入圖片描述安裝前可以查看一下選項,查看選項如圖:
在這裏插入圖片描述
Done回車之後,就可以安裝了,如下:
在這裏插入圖片描述
根據提示查看日誌:
在這裏插入圖片描述
上面的報錯說的是文件存在,所以跳過,所以現在繼續吧,沒有問題!

# 安裝完成之後,可以配置他們的環境變量,在vim ~/.bashrc的最後加上以下配置信息(路徑根據實際情況配置):
export CUDA_HOME=/usr/local/cuda-10.1
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64
export PATH=${CUDA_HOME}/bin:${PATH}

# 最後使⽤命令source ~/.bashrc使它⽣效。
source ~/.bashrc

在這裏插入圖片描述查看版本信息:

nvcc -V

在這裏插入圖片描述
如上,cuda安裝成功。

(2)安裝CUDNN

# 安裝cudnn
# 先它進⾏解壓,命令如下
tar -zxvf cudnn-10.1-linux-x64-v7.6.5.32.tgz
# 使⽤以下兩條命令複製這些⽂件到CUDA⽬錄下:
sudo cp cuda/lib64/* /usr/local/cuda-10.1/lib64/
sudo cp cuda/include/* /usr/local/cuda-10.1/include/
# 拷⻉完成之後,可以使⽤以下命令查看CUDNN的版本信息:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2

在這裏插入圖片描述
在這裏插入圖片描述

4、安裝Docker

需要安裝指定的docker版本 19.03.6:

sudo apt-get update && sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common && curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add - && sudo apt-key fingerprint 0EBFCD88

在這裏插入圖片描述

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"

在這裏插入圖片描述

# 查詢指定可安裝的docker版本
apt-cache madison docker-ce
apt-cache madison docker-ce-cli
# 如果系統是ubuntu18.04可直接使⽤以下命令安裝,
# ubuntu其他版本可以⽤上⾯的命令先查看可安裝的命令
sudo apt-get install docker-ce=5:19.03.6~3-0~ubuntu-bionic docker-ce-cli=5:19.03.6~3-0~ubuntu-bionic containerd.io

在這裏插入圖片描述

# 將當前⽤戶加⼊docker⽤戶組
sudo gpasswd -a $USER docker
# 更新⽤戶組
newgrp docker 
#有成功輸出則說明安裝成功
docker ps 

在這裏插入圖片描述

# 注意以下內容⼀般是不⽤操作
# 查看docker info
docker info
# 如果默認的docker⽬錄存儲⼤⼩不夠,想重新指定docker存儲⽬錄,則修改⽂件:
vim /lib/systemd/system/docker.service
# From:
ExecStart=/usr/bin/dockerd -H fd:// 
# To: Add --data-root parameter
ExecStart=/usr/bin/dockerd -H fd:// --data-root="/data/docker-files"
# 重啓Docker Servicer
systemctl daemon-reload
systemctl restart docker
# 確認是否修改成功
docker info

在這裏插入圖片描述

5、安裝nvidia-docker

sudo docker volume ls -q -f \
driver=nvidia-docker | xargs -r -I{} -n1 \
docker ps -q -a -f volume={} | xargs -r docker rm -f && \
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
sudo apt-key add - && \
distribution=$(. /etc/os-release;echo $ID$VERSION_ID) && \
curl -s -L \
https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list\
 | sudo tee /etc/apt/sources.list.d/nvidia-docker.list && \
sudo apt-get update && \
sudo apt-get install -y nvidia-docker2

在這裏插入圖片描述
修改配置文件:

sudo vi /etc/docker/daemon.json 
# 內容如下:
{
	"registry-mirrors": ["https://spkkpnpn.mirror.aliyuncs.com"],
	"default-runtime": "nvidia",
	"exec-opts": ["native.cgroupdriver=systemd"],
	"runtimes": {
		"nvidia": {
			"path": "nvidia-container-runtime",
			"runtimeArgs": []
		}
	},
	"dns": ["114.114.114.114", "8.8.8.8"]
}

在這裏插入圖片描述

# 保存後重新加載docker daemon 
sudo systemctl daemon-reload
sudo systemctl restart docker
# 驗證從docker中可以調⽤nvidia,在有gpu環境的機器下驗證 
docker run --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi

在這裏插入圖片描述在這裏插入圖片描述
如上,出現這個結果,說明docker可以調⽤GPU了。可喜可賀。

6、安裝 Mongodb、unrar、nfs-common、g++aarch64-linux-gnu

sudo apt-get install mongodb unrar nfs-common g++-aarch64-linux-gnu sox
# 修改mongodb的訪問權限 
sudo vi /etc/mongodb.conf
# 輸入內容
bind_ip=0.0.0.0
# 重啓mongodb
sudo systemctl restart mongodb.service 

在這裏插入圖片描述

7、安裝Tvm

# 下載tvm源碼 
git clone --recursive https://github.com/apache/incubator-tvm tvm
# 安裝相關⼯具 
sudo apt-get update && sudo apt-get install -y python3 python3-dev   python3-setuptools gcc libtinfo-dev zlib1g-dev build-essential cmake libedit-dev libxml2-dev
# 安裝LLVM 
sudo bash -c "$(wget -O - https://apt.llvm.org/llvm.sh)"
# 複製配置並修改 
cd tvm 
mkdir build 
cp cmake/config.cmake build
# 修改配置,Change set(USE_LLVM OFF) to set(USE_LLVM ON) 
sudo vi ./build/config.cmake
# 修改內容
set(USE_LLVM ON)
# build tvm and related libraries. 
cd build 
cmake ..
make -j4
# 安裝編譯出來的tvm python庫,安裝到python3 
cd tvm 
cd python; sudo python3 setup.py install; cd .. 
cd topi/python; sudo python3 setup.py install; cd ..
# 安裝python依賴庫 
sudo apt install antlr4 
sudo pip3 install numpy decorator attrs tornado mypy orderedset antlr4-python3-runtime
# 驗證 
python3 
# 進⼊交互模式,輸⼊⼀下內容導⼊tvm 
import tvm

8、安裝 rknn python庫

下載地址:https://gitee.com/david12/rknn-toolkit

# ⽂件rknn_toolkit-1.3.0-cp36-cp36m-linux_x86_64.whl 
sudo pip3 install rknn_toolkit-1.3.0-cp36-cp36m-linux_x86_64.whl

在這裏插入圖片描述

9、安裝 docker-py python 庫

git clone https://github.com/teklia/docker-py.git
cd docker-py 
# 切換到device-device分⽀ 
git checkout device-requests 
sudo python3 setup.py install

在這裏插入圖片描述

10、安裝 Nginx,並複製前端代碼

# 將提供的dist.zip(我司前端文件)放到⽬錄/home/openailab 
# 解壓dist.zip 
unzip dist.zip -x
# 可以看到多出來⼀個/home/openailab/dist⽬錄
# 安裝nginx 
sudo apt-get install nginx
# 修改配置,設置前端⻚⾯ 
sudo vi /etc/nginx/sites-enabled/default
# 修改內容
# (根據實際需求進行修改即可)
sudo service nginx restart
# 訪問配置的端口,如:http://xx.xx.xx.xx:1026

在這裏插入圖片描述

11、拉取相關 Docker鏡像

docker login --username=[email protected] registry.xxxxxxxxxx.aliyuncs.com
docker pull xxxxxxxxx 
docker tag  xxxxxxxxx

12、加密後端代碼,並運⾏

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章