hyper-v中搭建本地服务器linux(CentOS 7)的python环境
Posted jun-x
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了hyper-v中搭建本地服务器linux(CentOS 7)的python环境相关的知识,希望对你有一定的参考价值。
新建虚拟机->安装CentOS7->新建虚拟交换机:内部网络->CentOS7设置->网络适配器:虚拟交换机:新建虚拟交换机->进入CentOS
# cd /etc/sysconfig/network-scripts/ # ls -a # vi ifcfg-eth0 #(有些系统不是eth0,前面ifcfg-的固定的)
添加或修改,最简配置如下
TYPE=Ethernet BOOTPROTO=static DEVICE=ens0 ONBOOT=yes IPADDR=192.168.xxx.xxx NETMASK=255.255.255.0 GATEWAY=192.168.xxx.x
保存退出(按ESC再:wq回车)
windows中本地网络连接将以太网与vEthernet桥接
# service network restart
进路由器设置给linux分配静态IP
git安装
# yum install git -y
安装python编译依赖
# yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel
ubuntu:
$ sudo apt-get install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \\
libreadline-dev libsqlite3-dev wget curl llvm libncurses5-dev libncursesw5-dev \\
xz-utils tk-dev libffi-dev liblzma-dev python-openssl git
# adduser <name>
--------切换用户--------
# su - <name> #(su - 和 su 的区别于前者切换包括当前目录及环境)
安装pyenv
$ curl -L https://github.com/pyenv/pyenv-installer/raw/master/bin/pyenv-installer | bash
(若curl出错(35)SSL connect error ,需要配置一个有校新包的yum源
# vim /etc/yum.repos.d/dvd.repo
添加下文本
[updates] name=CentOS-Updates baseurl=https://mirrors.aliyun.com/centos/6.9/os/x86_64 gpgcheck=0
# yum repolist
然后更新nss
# yum update nss
~/.bash_profile中追加pyenv #(按提示来,可能是~/.bashrc)
export PATH="/home/python/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
$ vim ~/.bash_profile $source ~/.bash_profile #(刷新文件)
使用pyenv的install安装所需版本的python
$ pyenv install help $ pyenv install -l $ pyenv install 3.7.1
若 ModuleNotFoundError: No module named \'_ctypes\',其实是缺少了一个依赖包libffi-devel,安装后即可再返回用户安装python
# yum install libffi-devel -y (包在base)(su - root)
ubuntu:
$ sudo apt install libffi-dev
本地安装 (需要插件Xftp)
$ cd .pyenv
$ mkdir cache
$ cd cache/
use Xftp copy python-3.7.1.tar.zx&python-3.7.1.tgz to /home/python/.pyenv/cache/
$ pyenv install 3.7.1
查看python本版
$ pyenv versions
切换python本版
[global 全局设置、shell 会话设置、local 目录设置]
$ python local 3.7.1 (子目录继承)
virtualenv 虚拟环境(site-packages独立分开)
$ pyenv virtualenv 3.7.1 <Vname>
$ pyenv local <Vname>
--------ipython的安装----------
在~目录下创建 .pip 文件夹
$ mkdir .pip
$ cd .pip
$ touch pip.conf
$ vim pip.conf
[global] index-url=https://mirrors.aliyun.com/pypi/simple/ trusted-host=mirrors.aliyun.com
安装ipython&jupyter和jupyter配置
$ pip install ipython
$ pip install jupyter
首先输入ipython生成秘钥
$ ipython >>>from notebook.auth import passwd >>>passwd()
生成的密钥建议保存到一个文件中
使用jupyter前先设置密码
$ jupyter notebook password
$ jupyert notebook --ip=0.0.0.0
在windows浏览器中输入地址 192.168.xxx.xxx:8888
##########以上主要操作来源于马哥教学###############
如果windows的浏览器连接不上jupyter,有可能是linux 防火墙阻止了,关闭掉
# systemctl stop firewalld
port&firewall more: https://www.cnblogs.com/moxiaoan/p/5683743.html
云服务上搭建的jupyter在本地浏览器中使用还需要配置
$jupyter notebook --generate-config
Writing default config to: /home/py/.jupyter/jupyter_notebook_config.py
打开配置文件的路径中的配置文件.jupyter/jupyter_notebook_config.py
,修改下面的设置
$vim ~/.jupyter/jupyter_notebook_config.py
修改文件中的:
#c.NotebookApp.ip=\'*\'
#c.NotebookApp.password = u\'sha:ce...ipython生成的密钥\'
#c.NotebookApp.open_browser = False
#c.NotebookApp.port =8888 #随便指定一个端口
打开jupyter notebook应该可以在本地浏览器直接访问http://公网ip:8888
就可以看到jupyter
的登陆界面。
如果登陆失败,则有可能是服务器防火墙设置的问题,此时最简单的方法是在本地建立一个ssh通道:
在本地终端cmd中输入ssh <name>@公网ip -L127.0.0.1:1234:127.0.0.1:8888
便可以在localhost:1234直接访问远程的jupyter了。
---------------------
作者:安静会
来源:CSDN
原文:https://blog.csdn.net/u013381011/article/details/79639899
版权声明:本文为博主原创文章,转载请附上博文链接!
还有一种方法是开放端口,直接用公网地址加端口号可访问
# firewall-cmd --zone=public --add-port=8888/tcp * 重启服务器时会失效 添加--permanent 将永久开放8888端口
在服务器管理中将8888端口放开,授权访问,授权对象可以填本地IP,实现一对一开放
其它可能用到的指令:
查看linux本地端口 打包packages及加载
$ ss -tanl $ pip freeze > <name>
$ pip install -r <file_packages>
# passwd <name> 为name用户设置密码
# reboot 重启系统
# vim /etc/sudoers 修改sudo用户组("root ALL=(ALL) ALL"在下一行添加"<name> ALL=(ALL) ALL")
# chmod 777 /etc/sudoers 当上一步操作提示只能读取无法修改时使用
以上是关于hyper-v中搭建本地服务器linux(CentOS 7)的python环境的主要内容,如果未能解决你的问题,请参考以下文章