Python web 服务
目录
要点: Python的网络功能。
Python与网络服务
查询IP地址: $ ifconfig 看 eno1网卡的 inet 192.168.2.120 就是IP地址。
开启简单web服务
开启web服务,就可以通过浏览器直接查看图片、pdf、txt等常规文件,而无需下载。
这特别适合调试画图脚本参数:shell中修改并运行,浏览器刷新立刻预览效果。
方法1: 使用 Python 建立简单服务器。
以上代码建议在tmux中运行,这样http服务就可以常驻后台了。
运行这一行代码后,会输出一个url,打开浏览器,就可以用该url访问资源了,可以预览图片、pdf、txt等,也可用于局域网传输大文件。
方法2: 使用 js/Node 建立简单服务器。
>>点击 查看更多参数.方法3: 使用 docker 建立 nginx 服务器。
iptables开放端口访问权限
开放8787端口访问 $ sudo iptables -I INPUT -p tcp --dport 8787 -j ACCEPT 查看该端口是否开放 $ telnet x.biomooc.com 7777 如果出现 Escape character is '^]'. 一般表示开放该端口,且可以访问。 从另一台主机扫描某个端口段,查看开放的端口号 $ sudo nmap -sS -p 5000-10000 x.biomooc.com PORT STATE SERVICE 6666/tcp open irc 7777/tcp open cbt 8888/tcp open sun-answerbook
开端口是系统资源,需要root权限或者sudo权限。
运行服务器上的 Jupyter notebook
$ jupyter notebook --no-browser --port 7000 --ip=192.168.2.120 # 以上代码建议在tmux中运行,这样jupyter服务就可以常驻后台了。
然后通过本地浏览器作为客户端,就可以直接使用服务器硬件和文件了。
http://192.168.2.120:7000/?token=3816b9c204abfd22c38ba70cd298c262d01ad826215beffb (注意替换IP、端口号为当前设置的值,token为每次运行自动生成的登陆凭证)
$ jupyter notebook list # 查询当前主机可用的jupyter及其token开启本地端口转发 ssh -L
如果没有管理员权限,可以考虑本地端口转发:
$ ssh -L 7000:localhost:7000 username@remote_server_ip
然后在本地浏览器中输入 http://localhost:7000/?token=xxxx 登录。
使用 xshell 可以进行图形化界面设置端口转发:
连接-ssh-隧道,单击添加 - 类型:本地(拨出) - 源主机: localhost,侦听端口:8787 - 服务器信息: 目标主机: 10.10.x.143,目标端口:8787 查看隧道状态:For xshell - 菜单 查看 - 隧道窗格; - 底下新窗口,选择最后一个 转移规则,可以看到隧道状态列表。 - 如果状态是 打开,表示正常。
Python 内置模块 venv: 创建虚拟环境
venv 是 Python 原生环境管理。
创建环境 $ python3 -m venv alphaFold-env 激活环境 $ source alphaFold-env/bin/activate 安装包 $ python3 -m pip install novas 关闭环境 $ deactivate
基于python的笔记管理系统txtBlog.py
[知识管理]A simple yet powerful blog system for reading and organizing txt files, based on Python3 flask framework. 支持txt, html, markdown 格式的笔记。
依赖py包: flask,
整体结构
对markdown的支持,自动代码行号,左下角自动生成悬浮目录。