一、项目需求:
1、在Ubuntu Linux 22.04 LTS 版本的系统是部署开机自启动service;
2、通过widows11与Ubuntu Linux 22.04进行Post请求;
3、启动python的服务,在指定的conda环境下运行代码。
二、实施流程:
1、创建运行脚本
bash
#在目标目录创建一个脚本
sudo vim auto_run.sh
2、自动执行内容
然后在auto_rune.sh中贴入下面的内容:Anaconda 安装目录及 activate 脚本的具体目录位置,需要替换成你的安装路径;之后切换到你的项目的根目录;
使用 Python 指令运行目标 Python 程序;
python
#!/bin/bash
# activate conda env
source /home/user/anaconda3/bin/activate fastapi
# use target path
cd /home/user/Python/code/
python FastAPI.py
3、建立一个Service
bash
#在目标目录创建一个 Service 文件
sudo vim auto_run.service
#贴入下面的内容:
[Unit]
Description=Run FastAPI service at Startup
After=network.target
[Service]
ExecStart=/home/user/Python/code/auto_run.sh
User=root
Group=root
Restart=always
[Install]
WantedBy=multi-user.target
#After 代表要在什么服务启动后再启动此服务;
#ExecStart 是要运行的脚本的路径;
#其它几项都设置成 root 代表使用 root 账户运行此服务;
#保存后,需要将其移动到系统服务的文件夹内。
sudo cp auto_run.service /usr/lib/systemd/system/auto_run.service
4、执行以下步骤
bash
#然后刷新
sudo systemctl daemon-reload
#启动
sudo systemctl start auto_run.service
#设置开机自启动(可选)
sudo systemctl enable auto_run.service
#关闭开机自启动(可选)
sudo systemctl disable auto_run.service
#查看状态
sudo systemctl status auto_run.service