Ubuntu部署Clash和Pyenv

本文最后更新于:2024年8月11日 晚上

Clash与Pyenv部署

【主要文档】 | 【可视化面板】 | 【参考文档】

为什么会把CLashpyenv联系起来呢,情况是这样的

在我尝试部署pyenv时遇到了git无法正确克隆的问题,而且多次尝试都失败

因此必须先部署clash才能正常克隆,如果你不需要的话可以直接跳过相关内容

部署Clash

拉取镜像

docker pull dreamacro/clash-premium
主要程序,之前也尝试过别的镜像,暂时只有这个成功了,我不清楚是否是镜像的问题

docker pull centralx/clash-dashboard
相比于其他已经封装好的面板,这个镜像最近还有更新

准备config.yaml

很多教程都使用weget来拉取这个文件,这里演示从已经配置好的clash for windows来准备

直接在clash for windowsprofiles右键你想使用的配置,越稳定的机场越好,直接show in folder

将选中的文件通过SCP之类的方式上传到服务器里

然后==修改==配置文件,其他配置你可以不动,但是务必检查以下字段

1
2
3
4
5
Port: 7890
allow-lan: true
external-controller: '0.0.0.0:9090' # 远程连接的端口,不修改的话面板可以自动连接
# 这个是访问密码,你可以设置你的Clash的访问密码,我没有设置,内网使用,我也不确定这个字段是否正确,你应该额外找相关文档
secret: 114514

有的教程会要求把Socket-port删掉换成混合端口,这里我是删掉了Socket-port但是原来的配置有Port,因此没动,不知晓这个是否就是混合端口

拉起镜像

拉起Clash的镜像,一些参数你可以自己修改,记得映射你的配置文件进去,映射本来想把7890取消,本来也是内网机使用,但是为了防止意外的问题,我就没有做,你可以测试一下。

9090不建议修改,务必映射出去,因为面板链接的时候没法直接从内网进行链接。我暂时没有查找修改方法,如果你找到了可以邮件给我。

network选项你可以按照自己的来,这里指定这个容器的IP为10.0.0.1方便下面的演示

1
docker run --name clash -v $PWD/config.yaml:/root/.config/clash/config.yaml --restart always -d -p 7890:7890 -p 9090:9090 --network web --ip=10.0.0.1 clash-premium

然后拉起面板镜像

映射的地址你可以自己修改成想要的,这个是面板访问的端口,你也可以使用nginx反代理

1

访问面板

理论上面板镜像拉起后回自己去访问localhost:9090,你登录时应该已经链接成功了

如果没有,请输入你的本机IP和访问端口(如果你修改了端口的话)

使用

Ubuntu shell中使用

export http_proxy=‘http://10.0.0.1:7890’:来使用Clash反代理你的http流量

export https_proxy=‘http://10.0.0.1:7890’:这里依然使用http访问容器,因为你的CLASH是没有配置SSL证书的

Pyenv安装

这个就非常简单了,启用代理后

ROOT>>git clone https://github.com/pyenv/pyenv.git /var/.pyenv

这里将pyenv安装在/var/.pyenv方便非ROOT用户的使用,默认教程应该会安装在~/.pyenv即用户的home目录下,其他用户是无法调用的

设置权限,让其他用户能访问

ROOT>>chmod -R o+w /var/.pyenv

给用户配置变量路径

1
2
3
echo 'export PYENV_ROOT="/var/.pyenv"' >> ~/.bashrc
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(pyenv init --path)"' >> ~/.bashrc

你也可以直接去~/.bashrc下直接加入这些字段而不使用echo

刷新配置

source ~/.bashrc

检验

pyenv --version

如果返回版本号说明已经安装成功

==Python安装位置==

/var/.pyenv/versions/python版本号

newbing说没法修改安装位置,那就这么用着吧

==可安装的版本查询==

1
pyenv install --list

==安装python==

类似指令如下

1
pyenv install 3.9.6

==版本查询==

来查询已经安装的python

1
pyenv versions

==多版本管理:切换版本==

如果你已经安装了多个py版本,使用指令切换

1
2
3
4
# 切换版本,如3.7.12
pyenv shell 3.7.12
# 取消临时切换
pyenv shell --unset

这样你安装的库将在这个版本下

==安装库==

使用

1
pyenv install numpy

==切换默认版本==

上面谈到取消临时切换,这个是永久切换版本

1
pyenv global 3.7.12

这样你在终端中使用python时就会使用这个版本


Ubuntu部署Clash和Pyenv
https://qlozin.top/2023/03/21/Linux Install Clash/
作者
QLozin
发布于
2023年3月22日
更新于
2024年8月11日
许可协议