0%

devpi | devpi6.+ 用法

先说一下环境。

  • 阿里云
  • python3.9

背景介绍

由于我的阿里云装了很多版本的 python,没有用虚拟环境,导致,安装完 devpi 不能使用,具体原因没看。

另外,安装完之后,总是报

一个英语 warnning,忘记复制了,具体意思是最好使用虚拟环境安装。

虚拟环境

安装了一个 MiniConda,版本是 3.9 的,devpi 的版本必须是 >= python3.7

安装 devpi

1
pip install -q -U devpi-server

使用清华源,安装的快一点。

然后执行

1
devpi-server --version

有输出了,之前,电脑宿主机有很多版本的 python,安装之后,执行 devpi-server 报没有该命令。

初始化

1
2
devpi-init
devpi-gen-config

这两个代码是初始化 devpi 和生成配置文件,必须要执行。

守护运行

1
supervisord -c gen-config/supervisord.conf

由于没有 supervisord 命令,所以需要安装

1
apt install supervisord

但是,总是报 Certificate verification failed: The certificate is NOT trusted. 错误,因为,我的 ubuntu 用的是清华源的镜像,不知道为啥,总是报不信任,我怀疑是清华源证书的问题。

所以,将 /etc/apt/sources.listhttps 改成 http 就好了。

安装成功后,运行

1
supervisord -c gen-config/supervisord.conf

就好了,现在只能是 本地访问,使用 netstat -tln 会发现

1
2
127.0.0.1:3141
::1:3141

说明只能本地访问,关闭守护进程使用

1
supervisorctl -c gen-config/supervisord.conf shutdown

修改配置文件

使用

1
cat gen-config/supervisord.conf

发现有这样一句

1
2
[include]
files = %(here)s/supervisor-devpi.conf

说明,配置文件是 supervisor-devpi.conf,打开后,内容如下

1
2
3
4
5
6
7
[program:devpi-server]
command=/root/miniconda3/bin/devpi-server
user = root
priority = 999
startsecs = 5
redirect_stderr = True
autostart = True

然后改成

1
2
3
4
5
6
7
[program:devpi-server]
command=/root/miniconda3/bin/devpi-server --host 0.0.0.0
user = root
priority = 999
startsecs = 5
redirect_stderr = True
autostart = True

这样再

1
supervisord -c gen-config/supervisord.conf

就是 0.0.0.0 开启了。当然,阿里云还需要开启防火墙和安全组。

我们上面只是安装了 devpi 服务器,如果需要界面还需要安装 devpi-web

pip install devpi-web

直接安装后就能使用了。

请我喝杯咖啡吧~