基於Deepo快速配置深度學習環境

2021-09-25 23:58:39 字數 2226 閱讀 4014

在開始深度學習之前,需先做好一件小事,那就是配置環境,配環境的煩惱配過的都知道,話不多說,直奔主題……

在閱讀本文之前需要了解:docker是什麼?docker的常用命令有哪些?(當然,不了解也沒有關係,按照本文所述步驟一步步來就可以不明覺厲的配好環境了hiahiahia)

ufoym/deepo是乙個幾乎包含所有主流深度學習框架環境的docker映象:theano, tensorflow, sonnet, pytorch, keras, lasagne, mxnet, cntk, chainer, caffe, torch。借助該映象,可以快速配置環境,

配置環境七步走,如下:

step 2:執行映象,建立容器

sudo nvidia-docker run -it --name=容器名 -v 宿主機目錄:/容器內目錄 -p 自定義埠號(此處假定為23333):22 ufoym/deepo bash
執行該命令後就進入了docker中。(建立容器的命令也是在不斷變化的,具體需要看官方文件,如果nvidia-docker run不能用的話,可以試試sudo docker run --gpus all -it )

其中,-v是實現目錄掛載,關於目錄掛載,可參考

-p是埠對映,對映成功後可以直接通過對映後的埠訪問docker。

舉例:假設伺服器ip位址為**.**.*.***,埠對映為 -p 23333:22  -p 23334:6006  -p 23335:8888,其中8888是jupyter的預設埠,6006是tensorboard的預設埠。則可

通過**.**.*.***的23333埠可以直接訪問docker,無需通過22埠進入伺服器,再在伺服器中進入docker

同一網段內的任意瀏覽器都可以通過**.**.*.***:6006來訪問tensorboard(前提:已開啟tensorboard服務)

同一網段內的任意瀏覽器都可以通過**.**.*.***:8888來訪問jupyter(前提:已開啟jupyter服務)

至此,已經可以使用docker開始工作了……後面的操作是為了提高使用體驗。

接下來,步驟3,4,5是為了開啟docker的tcp 22埠,以便通過docker的埠號直接ssh訪問docker。3,4,5,6步均在docker中進行操作。如果不開啟22埠,是沒有辦法通過對映的埠號直接登入docker的。

step 3:在docker內安裝openssh-server。

apt-get install openssh-server
如果安裝失敗,執行apt-get update與apt-get upgrade,然後再次嘗試安裝。

step 4:修改配置檔案

如果不把permitrootlogin prohibit-password注釋掉,會禁止root用密碼登入

首先用vim /etc/ssh/sshd_config開啟檔案,

然後將permitrootlogin prohibit-password用#注釋掉 ,新增一行permitrootlogin 改為yes

# 參考

step 5:開啟ssh服務,這樣就可以通過對映後的埠直接訪問docker。

service ssh restart

(或者/etc/init.d/ssh start

或者service ssh start),這三個命令總有乙個管用

step 6:設定root密碼,輸入passwd root然後回車,依照提示輸入密碼即可。

step 7:退出容器

如果用exit退出容器的話,那麼在退出之後會關閉容器。tcp服務也不能用了,自然就不能直接訪問docker

所以,採用快捷鍵ctrl+p+q退出容器而不關閉容器,下一次就可以直接通過對映後的埠訪問docker。

好了,至此大功告成,歡迎批評指正。

完成以上配置之後,便可以像這樣使用docker...

# 前提:在docker中開啟ssh服務,即service ssh restart;docker處於開啟狀態,即可以通過docker ps檢視到你的docker

#進入docker

ssh -p [自己設定的埠號] root@[ip位址]

#使用jupyter

在docker中開啟jupyter服務,然後在本地電腦瀏覽器上進入****.**.*.***:8888

快速配置ZendFramwork

apache環境是ampserv5.2.6的整合環境 目前使用的是zendframwork1.10 1 建乙個test.com的虛擬目錄 2 開啟 apmserv5.2.6 apache conf apmserv vhost.conf,把test.com的 allowoverride 設為all 3...

快速配置BIND DNS

新裝的centos虛擬機器,先設定下機器名和ip vim etc sysconfig network vim etc sysconfig network scripts ifcfg eth0 yum安裝bind 其他關聯資料的東西就不用裝了,我們直接使用文字檔案 yum install bind b...

快速配置vim ctags cscope

配置vim是linux環境下開發的日常,這裡記錄如何快捷地配置好vim ctags cscope開發環境。外掛程式管理器 git clone vim bundle vundle.vimctags cscope 要使用這兩個功能,除了要配置vim外,還有安裝相應的軟體。sudo apt get ins...