运行python项目常用工具的安装和使用(ubuntu22)

1.安装poetry --管理项目依赖

curl -sSL https://install.python-poetry.org | python3 -

检查:poetry --version

在项目下激活(比如pycharm的终端): poetry env activate

eval $(poetry env activate)

poetry install

禁用conda默认激活base环境,并改为自动激活poetry环境

conda config --set auto_activate_base false

source ~/.bashrc

nano ~/.bashrc

末尾添加:

复制代码
# 自动激活 Poetry 环境的函数
auto_poetry_shell() {
    if [ -f "pyproject.toml" ]; then
        # 检查 .venv 文件夹是否存在(假设你配置了 poetry 将虚拟环境创建在项目内)
        if [ -d ".venv" ]; then
            # 检查是否已经在虚拟环境中
            if [ -z "$VIRTUAL_ENV" ]; then
                echo "检测到 Poetry 项目,正在激活虚拟环境..."
                source ./.venv/bin/activate
            fi
        else
            # 如果没有 .venv 文件夹,可以尝试用 poetry 命令获取路径(性能稍慢)
            # 这里为了简洁,先不做复杂处理,你可以选择手动运行 poetry shell
            echo "提示:当前目录包含 pyproject.toml,但未找到 .venv 文件夹。请先运行 'poetry install' 或 'poetry config virtualenvs.in-project true' 将环境创建在项目内。"
        fi
    fi
}

# 覆盖 cd 命令
cd() {
    builtin cd "$@"
    auto_poetry_shell
}

# 当你打开一个新的终端直接进入某个目录时(比如通过 VS Code),也会触发检查
auto_poetry_shell

source ~/.bashrc

如果没有生效,需要删除之前创建过的虚拟环境,重新下载依赖即可:

在项目目录下:

poetry env list

poetry env remove 待删除环境名

一次性全部删除(谨慎使用):poetry env remove --all

poetry install

2.安装pyenv --管理python环境

sudo apt update

sudo apt install -y make build-essential libssl-dev zlib1g-dev libbz2-dev \

libreadline-dev libsqlite3-dev wget curl llvm libncursesw5-dev xz-utils \

tk-dev libxml2-dev libxmlsec1-dev libffi-dev liblzma-dev python3-openssl git
git clone https://gitee.com/mirrors/pyenv.git ~/.pyenv
echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bashrc

echo 'export PATH="PYENV_ROOT/bin:PATH"' >> ~/.bashrc

echo 'eval "$(pyenv init --path)"' >> ~/.bashrc

echo 'eval "$(pyenv init -)"' >> ~/.bashrc
source ~/.bashrc

pyenv --version

3.安装python --选择合适版本

pyenv install --list | grep 3.11

pyenv install 3.11.8
全局设置:pyenv global 3.11.8

仅当前项目:cd 你的项目绝对路径

pyenv local 3.11.8

python --version

4.docker

sudo apt update

sudo apt-get install apt-transport-https ca-certificates curl software-properties-common lrzsz -y

sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"

sudo apt-get install docker-ce -y

docker version

配置镜像源:

cd /etc/docker

sudo touch daemon.json

sudo nano daemon.json

写入:(注意对齐,未对齐会报错)

{

"registry-mirrors": [

"https://docker.1panel.live",

"https://hub.rat.dev"

],

}

检查一下:sudo cat daemon.json

systemctl daemon-reload

systemctl restart docker

检查状态:sudo systemctl status docker

  1. 数据库

MongoDB --直接拉取官方镜像运行容器:

docker run -d \

--name mongodb-local \

-p 27017:27017 \

-e MONGO_INITDB_ROOT_USERNAME=llm_engineering \

-e MONGO_INITDB_ROOT_PASSWORD=llm_engineering \

mongo:6.0

连接,启动项目数据库

(用户名和密码与配置文件一致即可,有数据进入则会自动创建,可以不用手动创建):

docker exec -it mongodb-local mongosh -u 用户名 -p 密码 --authenticationDatabase admin

可查看数据库,有三个它自带的数据库不要误删了

如果用的pycharm,用database去连接,在配置页面让编辑器自动下载对应版本的jar包,如果下载失败,可以手动下载jar包,放到编辑器目录下就行

pycharm破解方法(ubuntu):(注意会自动把Jetbrain旗下全部的软件都扫描出,并重置激活)官网下载pycharm,启动(如果是pycharm25版本,保证本机系统是jdk21,低于这个版本启动会报错)后关闭软件

保证网络打开,执行:wget --no-check-certificate ckey.run -O ckey.run && bash ckey.run

一直回车进行下一步,最后会跳转到一个网站,直接选择自己要破解的软件,复制激活码

打开软件,输入激活码即可

用的哪个数据库创建的用户,我用的admin(不用额外配置权限)就要在url里写明:authSource=admin

Qdrant --直接拉取官方镜像运行容器:

docker run -d \

--name qdrant-local \

-p 6333:6333 \

-p 6334:6334 \

qdrant/qdrant

这个一般是上云的,官网:https://cloud.qdrant.io/

本地启动使用,可在项目里加上配置:USE_QDRANT_CLOUD=false

点击启动后给的网址 http://localhost:6333/dashboard ,里面有官方教程和控制台

看看启动了哪些容器:docker ps

关闭某个容器:docker stop 名称或者id

先就这些,后面再说。

相关推荐
冰冷的希望18 小时前
【系统】非虚拟机,物理机安装Ubuntu教程,Windows与Linux(Ubuntu)双系统共存!
linux·windows·ubuntu·系统架构·vmware·双系统·pe系统
Agent产品评测局18 小时前
集团型企业智能自动化解决方案选型核心要点:2026架构深度与业务闭环实测指南
运维·人工智能·ai·chatgpt·架构·自动化
wanderist.18 小时前
【故障复盘】VS Code Remote-SSH 连接失败:ZeroTier 链路异常与 GLIBC 版本冲突双重坑
运维·ssh
EveryPossible18 小时前
什么是机器学习
服务器
minji...18 小时前
Linux 进程信号(四)内核态&&用户态,sigaction,可重入函数,volatile,SIGCHLD信号
linux·运维·服务器
新兴AI民工18 小时前
【Linux内核二十九】进程管理模块:CFS调度器check_preempt_wakeup
linux·linux内核·wakeup
AI先驱体验官18 小时前
数字人技术正在改变企业服务:一场静悄悄的效率革命
大数据·运维·人工智能·重构·aigc
lwx91485219 小时前
Linux-parted命令
linux·运维·服务器
xin_yao_xin19 小时前
Linux 下 Docker 安装教程(2026)
linux·运维·docker
不愿透露姓名的大鹏19 小时前
Linux环境下Node.js后台运行方式(实用版)
linux·运维·node.js