最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Jupyter Notebook 安裝配置與使用詳解

 更新時(shí)間:2021年01月06日 11:43:08   作者:JJwho  
這篇文章主要介紹了Jupyter Notebook 安裝配置與使用詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

本文示例環(huán)境:CentOS 7,遠(yuǎn)程服務(wù)器
可能的依賴:python; pip; python-devel; gcc; gcc-c++;

一、安裝(命令行操作) 如果沒有pip,要安裝pip:

安裝 setuptools

cd /tmp
wget https://pypi.python.org/packages/69/56/f0f52281b5175e3d9ca8623dadbc3b684e66350ea9e0006736194b265e99/setuptools-38.2.4.zip#md5=e8e05d4f8162c9341e1089c80f742f64  # 具體下載地址可能變更,請參見官網(wǎng):https://pypi.python.org/pypi/setuptools#downloads
unzip setuptools-38.2.4.zip # 我下載的是 .zip 源碼,所以用 unzip 解壓
cd setuptools-38.2.4/
python setup.py install

再安裝 pip

cd /tmp
wget https://pypi.python.org/packages/11/b6/abcb525026a4be042b486df43905d6893fb04f05aac21c32c638e939e447/pip-9.0.1.tar.gz#md5=35f01da33009719497f01a4ba69d63c9  # 同樣,具體下載地址參考:https://pypi.python.org/pypi/pip#downloads
tar zxvf pip-9.0.1.tar.gz # 解壓
cd pip-9.0.1/
python setup.py install

安裝 jupyter notebook

如果想用 python2:

python -m pip install --upgrade pip
python -m pip install jupyter

如果報(bào)錯(cuò):

………………………………
error: command 'gcc' failed with exit status 1

試試:

sudo yum install gcc gcc-c++ python-devel

再運(yùn)行

如果想用 python3:

python3 -m pip install --upgrade pip
python3 -m pip install jupyter

安裝完測試一下好不好用:

若jupyter 部署在遠(yuǎn)程服務(wù)器上,服務(wù)器防火墻開啟時(shí),端口可能不能訪問,所以加一步端口開放

firewall-cmd --zone=public --add-port=8888/tcp --permanent
success  
systemctl restart firewalld.service 

注意:如果是騰訊云等云服務(wù)器,可能需要上官網(wǎng)管理平臺,手動(dòng)配置安全組開放端口才行
然后啟動(dòng) jupyter

jupyter notebook --ip=*  # root下?lián)Q成:jupyter notebook --ip=* --allow-root

命令行顯示:

jupyter notebook 正常啟動(dòng)的示意圖

打開瀏覽器,輸入url: localhost:8888,回車,瀏覽器顯示:
注意:在遠(yuǎn)程服務(wù)器上部署jupyter的要把 localhost 改成對應(yīng)的 ip 地址

token登錄界面

讓你用token登錄,把上面命令行反饋的 token (倒數(shù)第二行)復(fù)制過來輸入,登錄成功:

token登錄成功

二、配置

上述步驟創(chuàng)建的 jupyter notebook 是臨時(shí)性的,沒有配置密碼、SSL、工作目錄等等,不方便也不安全。下面為需要的用戶建立專屬的配置。

注意:下文中的例子在 root 賬戶下進(jìn)行,建議實(shí)際不要用 root 用戶。

配置文件生成

如果服務(wù)器上你的賬戶下已有默認(rèn) jupyter 用戶(的配置文件),可以直接拷貝一份,改個(gè)名字,比如:

cd /root/.jupyter
cp jupyter_notebook_config.py jupyter_my_config.py

或者,直接自己找個(gè)任意目錄,比如 /root/my_configs,直接創(chuàng)建一個(gè)新文件作為配置文件(反正就是個(gè)文本文件,放哪里都行):

mkdir /root/my_configs
cd /root/my_configs
touch jupyter_notebook_config.py

再或者,賬戶下未建立默認(rèn) jupyter 配置文件的情況下,可以自動(dòng)生成:

jupyter notebook --generate-config

生成了配置文件 

現(xiàn)在假設(shè)我們的配置文件是用最后一種方式創(chuàng)建的,我們進(jìn)入目錄看看

[root@VM_157_11_centos ~]# cd /root/.jupyter/
[root@VM_157_11_centos .jupyter]# ls
jupyter_notebook_config.py
[root@VM_157_11_centos .jupyter]# 

配置文件編輯

打開 jupyter_notebook_config.py 文件:

vim jupyter_notebook_config.py

可以看到全是注釋的配置說明,比較復(fù)雜,也不是都用得上,這里我們自己寫一些重要的配置即可,在文件開頭寫入:

c = get_config()
c.IPKernelApp.pylab = "inline"
c.NotebookApp.ip = "*"
c.NotebookAPp.open_browser = False
c.NotebookApp.password = 'sha1:b39d2445079f:9b9ab99f65150e113265cb99a841a6403aa52647'
c.NotebookApp.certfile = u'/root/.jupyter/mycert.pem'
c.NotebookApp.port= 8888
c.NotebookApp.notebook_dir = "/root/ipython"

注意1:第五行 password 填入的是<登錄密碼的 sha1 加密版>,通過以下方式生成:

[root@VM_157_11_centos .jupyter]# python
Python 2.7.5 (default, Aug 4 2017, 00:39:18) 
[GCC 4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from IPython.lib import passwd
>>> passwd()
Enter password: 
Verify password: 
'sha1:175e8efe8974:eacef02a2e3f959d6efdf6c93d142c7f4712f5cc'
>>> exit()
[root@VM_157_11_centos .jupyter]# 

注意2:第六行的 certfile 證書文件可以通過下面這行命令生成(中間的交互信息可以隨便填),注意路徑要對應(yīng)上:

openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout mycert.pem -out mycert.pem

注意3:第七行的 port 應(yīng)該是一個(gè)未被占用的、被防火墻允許的端口(在上面的步驟我們已經(jīng)打開了 8888 端口),這里再強(qiáng)調(diào)一遍(同樣的,騰訊云等服務(wù)器需要在官網(wǎng)修改安全策略):

firewall-cmd --zone=public --add-port=8888/tcp --permanent
success  # 系統(tǒng)反饋信息
systemctl restart firewalld.service 

注意4:第八行的 notebook_dir 是你的文檔目錄,需要自行選擇并創(chuàng)建(否則運(yùn)行時(shí)會報(bào)錯(cuò)):

mkdir /root/ipython

運(yùn)行

[root@VM_157_11_centos .jupyter]# jupyter notebook --config jupyter_notebook_config.py --allow-root
[I 19:58:54.278 NotebookApp] Serving notebooks from local directory: /root/ipython
[I 19:58:54.279 NotebookApp] 0 active kernels
[I 19:58:54.279 NotebookApp] The Jupyter Notebook is running at:
[I 19:58:54.279 NotebookApp] https://[all ip addresses on your system]:8888/
[I 19:58:54.279 NotebookApp] Use Control-C to stop this server and shut down all kernels (twice to skip confirmation).
[W 19:58:54.279 NotebookApp] No web browser found: could not locate runnable browser.

關(guān)于參數(shù):–config 是可選的,默認(rèn)會用 jupyter_notebook_config.py 文件,如果有多個(gè)用戶配置文件(給多個(gè)用戶分別提供 jupyter notebook),就必須要用這個(gè)命令了。–allow-root 是 root 用戶啟動(dòng) jupyter notebook 時(shí)的必須參數(shù),實(shí)際上不建議使用 root 啟動(dòng) jupyter notebook,最好還是用其他用戶啟動(dòng),這樣在 瀏覽器端 cmd 窗口就不至于直接暴露 root 權(quán)限。
后臺運(yùn)行: 實(shí)際使用的時(shí)候我們當(dāng)然會讓 jupyter notebook 在后臺一直運(yùn)行著,即使我斷開 ssh 連接之后也要可以通過瀏覽器訪問。那也簡單,用 nohup 命令就可以了:

nohup jupyter notebook --config jupyter_notebook_config.py --allow-root 2>&1 > my.log & 

用該命令啟動(dòng) jupyter notebook 之后,原先打印在屏幕上行的日志會寫入到 my.log 文本文件中(該文件路徑可以替換,當(dāng)然完全不想要日志的話也可以重定向到 /dev/null)。

瀏覽器端訪問

瀏覽器端的 url:https://localhost:8888
注意:localhost 可以替換成 ip/域名; https:// 不能丟,否則你會在服務(wù)器日志上看到下面的錯(cuò)誤:

[W 20:39:48.439 NotebookApp] SSL Error on 10 ('58.59.67.94', 61845): [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:579)
[W 20:39:49.869 NotebookApp] SSL Error on 10 ('58.59.67.94', 61849): [SSL: WRONG_VERSION_NUMBER] wrong version number (_ssl.c:579)

再注意:由于我們生成的 SSL 證書是非正式簽發(fā)的,所以Chrome等瀏覽器可能會提示“您的連接不是私密連接”之類的風(fēng)險(xiǎn)問題,這里選“高級” – “繼續(xù)前往”就好了。

正常進(jìn)入主頁

空白的主頁

點(diǎn)擊右上角的 New 就可以創(chuàng)建 notebook 文件,然后交互式的寫程序了~

三、增加 python3 內(nèi)核

在主頁中,我們可以 單擊 New 然后創(chuàng)建 python 2 和 python 3 的 notebook 文件,但是實(shí)際上默認(rèn)只有一個(gè) python 2 的內(nèi)核(上面用 python 2 安裝的 jupyter),New 出來的 python 3 notebook 實(shí)際上還是 python 2 的,運(yùn)行一下 “print 123”,不會報(bào)錯(cuò)(python 3 需要 print(123) )。
已有 python 2,安裝 python 3內(nèi)核:

python -m ipykernel install --user
python3 -m pip install -U ipykernel
python3 -m ipykernel install --user

這個(gè)時(shí)候再去主頁,選擇 python 3 時(shí)就可以用 python 3 的 kernel 了。

四、Jupyter Notebook 的小“坑”

這里不定時(shí)記錄一些用的時(shí)候遇到的問題,以及解決方法。

環(huán)境變量問題:如果在代碼內(nèi)修改了環(huán)境變量,需要重啟 kernel 才能生效;
常駐內(nèi)存既是優(yōu)點(diǎn)也是缺點(diǎn),長期不用的話要自己主動(dòng)去把 Running 中的項(xiàng) Shutdown;
待續(xù)。

到此這篇關(guān)于Jupyter Notebook 安裝配置與使用詳解的文章就介紹到這了,更多相關(guān)Jupyter Notebook 安裝配置內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 讓python json encode datetime類型

    讓python json encode datetime類型

    python2.6+ 自帶的json模塊,不支持datetime的json encode,每次都需要手動(dòng)轉(zhuǎn)為字符串,很累人,我們可以自己封裝一個(gè)簡單的方法處理此問題。
    2010-12-12
  • python服務(wù)器中發(fā)送外部請求的基本步驟

    python服務(wù)器中發(fā)送外部請求的基本步驟

    在Python中,服務(wù)器發(fā)送外部請求是一個(gè)常見的操作,尤其是在需要集成不同服務(wù)或API時(shí),有多種庫可以幫助你完成這項(xiàng)任務(wù),但最流行和廣泛使用的庫之一是requests,下面給大家分享python服務(wù)器中發(fā)送外部請求的基本步驟,感興趣的朋友一起看看吧
    2024-08-08
  • 分享vim python縮進(jìn)等一些配置

    分享vim python縮進(jìn)等一些配置

    本篇文章給大家分享了vim python縮進(jìn)等一些配置的相關(guān)知識點(diǎn),有需要的朋友可以參考下。
    2018-07-07
  • Python中的八大核心語句你知道幾個(gè)呢?

    Python中的八大核心語句你知道幾個(gè)呢?

    Python?是一種代表簡單思想的語言,其語法相對簡單,很容易上手。本文精心篩選了Python中的八大核心語句,快來看看你都掌握了幾個(gè)呢
    2023-02-02
  • 學(xué)習(xí)和使用python的13個(gè)理由

    學(xué)習(xí)和使用python的13個(gè)理由

    在本篇文章里小編給大家整理了關(guān)于學(xué)習(xí)和使用python的13個(gè)理由以及相關(guān)知識點(diǎn),需要的朋友們參考下。
    2019-07-07
  • Django migrate報(bào)錯(cuò)的解決方案

    Django migrate報(bào)錯(cuò)的解決方案

    在講解如何解決migrate報(bào)錯(cuò)原因前,我們先要了解migrate做了什么事情,本文就詳細(xì)的介紹migrate使用以及出現(xiàn)問題的解決,感興趣的可以了解一下
    2021-05-05
  • python快排算法詳解

    python快排算法詳解

    在本篇內(nèi)容里小編給大家整理了關(guān)于python快排算法的相關(guān)知識點(diǎn)內(nèi)基礎(chǔ)內(nèi)容,需要的朋友們學(xué)習(xí)下。
    2019-03-03
  • python中__slots__節(jié)約內(nèi)存的具體做法

    python中__slots__節(jié)約內(nèi)存的具體做法

    在本篇內(nèi)容里小編給大家分享的是一篇關(guān)于python中__slots__節(jié)約內(nèi)存的具體做法,有需要的朋友們可以跟著學(xué)習(xí)參考下。
    2021-07-07
  • python實(shí)現(xiàn)梯度下降法

    python實(shí)現(xiàn)梯度下降法

    這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)梯度下降法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • Python3 re.search()方法的具體使用

    Python3 re.search()方法的具體使用

    本文主要介紹了Python3 re.search()方法的具體使用,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-08-08

最新評論

百色市| 颍上县| 安新县| 文登市| 神木县| 龙南县| 吉林市| 重庆市| 张家口市| 本溪市| 汨罗市| 达尔| 咸丰县| 大同市| 芦山县| 乡宁县| 柳林县| 垣曲县| 星子县| 乐山市| 科尔| 疏附县| 瑞丽市| 高青县| 新郑市| 宿州市| 康保县| 余庆县| 祥云县| 周宁县| 玉门市| 枝江市| 泸西县| 山东省| 拉孜县| 二手房| 崇信县| 太康县| 库尔勒市| 蓬溪县| 探索|