linux docker創建容器教程
目錄
1.docker鏡像和容器區別:
鏡像是本地文件,容器是正在run運行的,需要將容器 save 或者 export 或者 commit 到本地,儘量不要覆蓋原來的鏡像;
2. 拉取鏡像:
docker pull ***鏡像
docker images
docker ps -a
docker stop Container_Name 停止容器
docker rm Container_Name 刪除容器
3. 運行鏡像,即->開啓容器:
docker run --runtime=nvidia -v /home:/home -w /home/leilei -it --entrypoint bash -d --name cuda8.0-leilei -h pytorch0.3.1 --shm-size 32G nvidia/cuda:8.0-cudnn5.0-devel-ubuntu16.04
命令參數解析:
--runtime 運行環境,nvidia代表可以使用顯卡
-v 目錄映射(宿主機目錄絕對路徑:容器目錄絕對路徑),共享目錄; /root就是用戶目錄,cd->pwd就可以得到
-w 工作目錄,進入docker時默認的路徑,但不一定是/root,直接cd,再pwd,可以看到/root
-it 進入docker之後命令行交互
--entrypoint 進入docker之後運行的命令
--name 給docker容器的命名
-h 給容器主機名hostname命名
-d 後臺運行
nvidia/cuda:8.0-cudnn5.0-devel-ubuntu16.04 鏡像名字(REPOSITORY:TAG)
docker start cuda8.0-leilei 開啓容器
docker exec -it cuda8.0-leilei bash 進入容器 以命令行形式
docker stop 容器名 關閉容器
docker rm 容器名 刪除容器
4. docker內上網:
cd /root
修改.bashrc,添加環境變量
若是不知道ip,win下面cmd ipconfig,無線局域網適配器 WLAN IPV4地址
export http_proxy=http://<your_ip>:6666
export https_proxy=http://192.***:6666
source .bashrc
修改apt源:
編輯/etc/apt/sources.list(儘量不能換行)
deb http:
//mirrors
.aliyun.com
/ubuntu/
xenial main restricted universe multiverse
deb http:
//mirrors
.aliyun.com
/ubuntu/
xenial-security main restricted universe multiverse
deb http:
//mirrors
.aliyun.com
/ubuntu/
xenial-updates main restricted universe multiverse
deb http:
//mirrors
.aliyun.com
/ubuntu/
xenial-proposed main restricted universe multiverse
deb http:
//mirrors
.aliyun.com
/ubuntu/
xenial-backports main restricted universe multiverse
deb-src http:
//mirrors
.aliyun.com
/ubuntu/
xenial main restricted universe multiverse
deb-src http:
//mirrors
.aliyun.com
/ubuntu/
xenial-security main restricted universe multiverse
deb-src http:
//mirrors
.aliyun.com
/ubuntu/
xenial-updates main restricted universe multiverse
deb-src http:
//mirrors
.aliyun.com
/ubuntu/
xenial-proposed main restricted universe multiverse
deb-src http:
//mirrors
.aliyun.com
/ubuntu/
xenial-backports main restricted universe multiverse
先rm -rf /etc/apt/sources.list.d(下載速度變快),再
apt-get update
5. 安裝各種軟件:
apt-get install vim tmux python3.5 python3-pip
pip3 install --upgrade pip
pip升級後可能會出現問題,若出現,則解決方法(否則跳過):
cd /usr/bin
vim pip3
將from pip import main -》 from pip import __main__
將sys.exit(main()) -》sys.exit(__main__._main())
更換pip源:cd (/root 可省); mkdir .pip ; touch pip.conf ; vim pip.conf 將下面3行復制進去
[global]
index-url = http:
//mirrors
.aliyun.com
/pypi/simple
trusted-host = mirrors.aliyun.com
6. 解決cv2的問題:
apt-get
install
libglib2.0-dev
# 安裝apt-file
apt-get
install
apt-
file
# 更新
apt-
file
update
# 尋找依賴
apt-
file
search libSM.so.6
# 安裝依賴
apt-get
install
libsm6
apt-get
install
libxrender1
或者:
apt install python-qt4
將pillow版本降到7以下
7. 設置python版本:
將python默認成python3.5
rm /usr/bin/python
ln -s /usr/bin/python3.5 /usr/bin/python
查看python -V pip -V