昨天晚上再VMware虛擬機中安裝了一個Ubuntu,并啟動jupyter notebook,準(zhǔn)備在Windows宿主機上直接訪問jupyter notebook,免去每次打開虛擬機編寫的麻煩。然而,jupyter notebook在虛擬機中安裝之后僅能在虛擬機內(nèi)部使用,而在宿主機中卻訪問不到。
端口映射
在使用NAT上網(wǎng)的時候,虛擬機內(nèi)的局域網(wǎng)和宿主的局域網(wǎng)是不同的網(wǎng)段。虛擬機可以訪問宿主機,但是宿主機不能反向訪問虛擬機。原因是宿主機感知不到虛擬機中的網(wǎng)絡(luò)存在。
VMware給我們提供了一個端口映射的功能,可以幫助我們訪問虛擬機中的端口,例如下圖,我配置了8080和8888兩個端口的映射。

image.png
關(guān)閉Ubuntu防火墻
Ubuntu默認(rèn)是開啟防火墻的,任何服務(wù),都無法被其他電腦訪問。jupyter也是一個提供http的服務(wù)的服務(wù)器,想要在宿主機上也訪問jupyter,那就要求Ubuntu關(guān)閉防火墻,至少是允許jupyter被訪問。
sudo ufw disable
安裝juypter
sudo apt-get install python
pip install ipython
pip install jupyter
配置jupyter
生成配置文件
jupyter notebook --generate-config
修改默認(rèn)配置文件
c.NotebookApp.ip='0.0.0.0' # 就是設(shè)置所有ip皆可訪問
c.NotebookApp.open_browser = False # 禁止自動打開瀏覽器
啟動jupyter
jupyter notebook
宿主機訪問
在宿主機中訪問localhost:8888即可訪問虛擬機中的jupyter notebook

image.png