国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

把jupyter-notebook裝進docker里

CoderStudy / 3015人閱讀

摘要:及系統已經安裝好的同學可以忽略這一節。源默認按裝的版本不是最新版本的,需要通過添加源的方式來安裝最新版本的。然后用將這個安裝好的容器做成鏡像。擴展如果要大數據分析,還需要安裝很多大數據相關的包。

jupyter-notebook是我很喜歡的工具,搭環境稍顯麻煩,其實jupyter web形式的使用方式,最好的部署方式是在云上,一次部署到哪里都可以使用,豈不快哉。現在各家云服務器還挺貴的,docker出來后,我就琢磨把jupyter-notebook放到容器中。

Docker及系統

已經安裝好的同學可以忽略這一節。我喜歡用ubuntu,所以host 系統是ubuntu,docker容器中的系統也是ubuntu。ubuntu apt-get源默認按裝的docker版本不是最新版本的,需要通過添加源的方式來安裝最新版本的docker。參考鏈接

#添加ubuntu apt 的https訪問能力
$ sudo apt-get install apt-transport-https

#將Docker官方資料庫的訪問Key添加到你本地系統
$ sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9

#將docker 資料庫地址添加到apt源列表
$ sudo bash -c "echo deb https://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list"

#安裝
$ sudo apt-get update
$ sudo apt-get install lxc-docker

Docker安裝好以后就要拉一個ubuntu版本鏡像,我拉的是ubuntu:14.04

docker pull ubuntu:14.04
啟動容器

容器是存放jupyter-notebook的地方,我們要做的是基于精簡版的ubuntu鏡像啟動一個容器,然后在里面安裝sshd這種遠程登錄的工具。
先讓容器以交互式虛擬終端的方式啟動,如果需要使用和host不同的DNS server配置,可以使用--dns參數指定DNS server,否則新啟動的docker 容器會復制host的/etc/resolv.conf。

docker run -i -t ubuntu:14.04 /bin/bash

安裝sshd的過程比較簡單,我通常安裝openssh-server

sudo apt-get install openssh-server

然后編輯它的配置文件 /etc/ssh/sshd_config,注釋掉配置文件中的"PermitRootLogin without-password",再增加一句"PermitRootLogin yes"使得root用戶可以遠程登錄。然后用將這個安裝好sshd的容器做成鏡像。
之后基于新鏡像啟動容器,用端口映射的方式,映射ssh端口到host,之后通過ssh指定端口的方式登錄到docker 容器。jupyter-notebook的默認端口號是8888,也可以提前考慮,在這里多映射幾個外部端口。

docker run -d -p 30001:22 --name jupyter-notebook ubuntu:14.04-sshd /usr/sbin/sshd -D
安裝jupyter

這個過程基本和在ubuntu系統上安裝jupyter的過程是一樣的,但容器中的ubuntu是個最簡環境,沒有安裝python-dev包。

#更新apt-get環境
apt-get update

#安裝python dev包
apt-get install python-dev

#安裝jupyter
pip install jupyter

安裝過程需要注意的是,由于墻的原因,ubuntu的源和pip的源都換成國內的源,我ubuntu用的是網易的源,pip用的是清華的源。

使用jupyter

jupyter 默認只能通過本地地址訪問,要放開配置,允許jupyter遠程訪問。在放開遠程訪問時,需要設置密碼,jupyter的配置文件只支持加密后的密文密碼(贊一個)

#生成jupyter配置文件,這個會生成配置文件.jupyter/jupyter_notebook_config.py
jupyter notebook --generate-config

#使用ipython生成密碼
In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password: 
Verify password: 
Out[2]: "sha1:38a5ecdf288b:c82dace8d3c7a212ec0bd49bbb99c9af3bae076e"

#去配置文件.jupyter/jupyter_notebook_config.py中修改以下參數
c.NotebookApp.ip="*"                          #綁定所有地址
c.NotebookApp.password = u"剛才生成的密碼"
c.NotebookApp.open_browser = False            #啟動后是否在瀏覽器中自動打開
c.NotebookApp.port =8888                      #指定一個訪問端口,默認8888,注意和映射的docker端口對應

配置完成以后,就可以用 jupyter notebook命令把jupyter啟動起來了,然后你就可以看到一個超級簡潔的jupyter登錄界面了。輸入密碼就可以開始使用jupyter了。

擴展

如果要大數據分析,還需要安裝很多大數據相關的包。
我用jupyter最多的還是使用pandas/scikit-learn,所以我會繼續安裝這兩個包,大家可以根據自己需要繼續安裝自己想要的python包。

#安裝numpy,安裝過程中會有c文件的編譯,可能會報些錯,但不影響最終結果
pip install numpy

#安裝scipy,安裝過程中會有c文件的編譯,可能會報些錯,但不影響最終結果
pip install scipy

#安裝matplotlib
pip install matplotlib

#安裝pandas
pip install pandas
pip install scikit-learn

總體來說pip的包管理還是比較好的,除了numpy、scipy編譯時報的一堆錯誤,整體安裝過程比較順暢。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/26751.html

相關文章

  • Docker 技術與 Coding.net 技術架構的變遷

    摘要:采用微服務架構設計的原因很簡單解放生產力。運行時服務缺少標準,各類實現區別很大,調試困難程度不一,集成測試更是難上加難。小伙伴們更進一步的互相提供幫助集成測試及單元測試,極大的釋放了團隊生產力。 showImg(https://dn-coding-net-production-pp.qbox.me/e205ba4f-5db9-4719-bc00-cae9823c2d74.png); ...

    Sunxb 評論0 收藏0
  • Docker 重要更新: 原生支持多階段構建(multi-stage build)

    摘要:在更多的提供商,你會發現他們只是能根據倉庫和構建鏡像,你用他們的系統甚至沒辦法做出一個最小鏡像中國的其實挺先進的,很早就推出了安全鏡像的概念,讓你的構建通過兩步完成。好了,祝賀那些不支持多段構建的服務,幫你們追平了競爭對手。 showImg(https://segmentfault.com/img/remote/1460000009069845?w=1479&h=609); Docke...

    linkFly 評論0 收藏0
  • 【轉】Docker那些事(一)

    摘要:而實際上在宿主機中也會同步啟動一個進程,其在宿主機中是。如果其中的某一個容器正在執行密集型的任務,那么它就會影響其他容器的任務執行效率,導致多個容器相互影響并且搶占資源。 作者:榮幸 為什么是容器 如果問你現在最熱門的服務器端技術什么?想必很多人會不假思索的說是容器! 容器技術實際上并不是一個新鮮的名詞,現在大家一提到容器馬上想到的就是Docker,但是容器這個詞并不是Docker公司...

    William_Sang 評論0 收藏0
  • 【架構學習】大數據在線比賽平臺架構設計

    摘要:實現架構基于這些調查以及一些小的編寫,設計出一個可定制化的在線比賽平臺的架構在中我使用的是,所以這里的持久卷是的持久化卷,用來管理用戶數據集和上傳和訪問。在管理的同時,也作為代理服務,可以直接把的內容返回給在線比賽平臺。 背景最近使用科賽發現這個和jupyter長的差不多的在線比賽平臺非常有趣,用戶可以上傳自己的數據,創建自己的項目并且可以使用交互式的筆記本, 支持實時代碼,數學方程,...

    chaosx110 評論0 收藏0
  • 【架構學習】大數據在線比賽平臺架構設計

    摘要:實現架構基于這些調查以及一些小的編寫,設計出一個可定制化的在線比賽平臺的架構在中我使用的是,所以這里的持久卷是的持久化卷,用來管理用戶數據集和上傳和訪問。在管理的同時,也作為代理服務,可以直接把的內容返回給在線比賽平臺。 背景最近使用科賽發現這個和jupyter長的差不多的在線比賽平臺非常有趣,用戶可以上傳自己的數據,創建自己的項目并且可以使用交互式的筆記本, 支持實時代碼,數學方程,...

    ThinkSNS 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<