当前位置: 首页 > news >正文 车陂手机网站建设报价泰安人才 news 2025/11/3 22:55:24 车陂手机网站建设报价,泰安人才,wordpress 多页面跳转,网上商城系统流程图文章目录 参考文章目录结构步骤安装venv查看python版本创建虚拟环境激活虚拟环境运行我们程序看缺少哪些依赖库#xff0c;依次安装它们接下来我们配置python程序启动脚本#xff0c;脚本中启动python程序前需先激活虚拟环境配置.service文件然后执行部署脚本#xff0c;成功… 文章目录 参考文章目录结构步骤安装venv查看python版本创建虚拟环境激活虚拟环境运行我们程序看缺少哪些依赖库依次安装它们接下来我们配置python程序启动脚本脚本中启动python程序前需先激活虚拟环境配置.service文件然后执行部署脚本成功了但是又莫名其妙搞出来一个问题后面一直不能复现后来又好了一直无法复现考虑问题复现时使用备用方案反正现在是正常的 20230811 虚拟环境中搞jtopjetson-stats还是有亿点问题 参考文章 Python虚拟环境使用教程以虚拟环境管理工具venv为例virtualenv、venv、pyenv、virtualenvwrapper、conda不同管理工具对比 目录结构 步骤 安装venv 它会基于当前版本的python3来安装python3-venv apt update apt install python3.8-venv查看python版本 执行python 创建虚拟环境 进入项目目录执行 python3 -m venv .venv-python3.8我把每个项目虚拟环境固定取名为.venv-python3.8后续方便脚本操作 20230813改了不这么搞了容易混淆每个虚拟环境都应该有自己特定的名字 python3 -m venv .venv-python3.8-ky_ai_ip_change可以看到生成了目录.venv-python3.8 我这刚生成的虚拟环境占空间也不大才7兆多 激活虚拟环境 source .venv-python3.8/bin/activate运行我们程序看缺少哪些依赖库依次安装它们 执行 python3 ip_change发现少了ping3装上 pip install ping3反复执行 python3 ip_change缺少啥库就装啥库 下载太慢我换成清华源怎么还给我卡住了 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple gevent20230813如果有requirements.txt文件可以直接 pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt可以禁用缓存因为缓存可能会导致大问题比如缓存里有但是是用之前正确的方式下载的当前下载方式不正确但用缓存也成功了就会导致下载者误判 pip install --no-cache-dir -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt第二天看好了 继续 可以了跑起来了接口也能调通 接下来我们配置python程序启动脚本脚本中启动python程序前需先激活虚拟环境 注意journalctl -u servicename没有及时打印python日志的原因是因为在systemd unit文件中执行shell脚本脚本中再执行python命令命令没加-u参数导致的。估计是systemd自动把shell脚本输出重定向到journalctl日志跟我们之前遇到的问题一样 ky_ai_ip_change.sh #!/bin/bash# 打印所有包括注释 # set -v # 打印执行命令 # set -x # 命令出错退出 set -e # 使用未初始化变量退出 set -uUSERroot# --------------------------------------------------------------------------# 检查是否是root WHO$(whoami | grep ${USER}$) if [ -z ${WHO} ]; thenechoecho Please change to \${USER}\ user mode first!echoexit 1 fi# --------------------------------------------------------------------------# 获取脚本所在路径 SCRIPT_LOCATION$(cd $(dirname $0) || {echo cd Failureexit 1}pwd ) echo SCRIPT_LOCATION $SCRIPT_LOCATION# --------------------------------------------------------------------------VENV_NAME.venv-python3.8 PYTHON_ENTRY_FILEip_change# --------------------------------------------------------------------------# 激活虚拟环境 # 加指令注释消除shellcheck警告source后有变量就会警告 # shellcheck source/ky/tml/ky_ai_ip_change/.venv-python3.8/bin/activate source $SCRIPT_LOCATION/$VENV_NAME/bin/activate if [ $? -ne 0 ]; thenecho Execute [source $SCRIPT_LOCATION/$VENV_NAME/bin/activate] failedexit 1 fi# 运行项目 # python -u $SCRIPT_LOCATION/$PYTHON_ENTRY_FILE # if [ $? -ne 0 ]; then # echo Execute [python $SCRIPT_LOCATION/$PYTHON_ENTRY_FILE] failed # exit 1 # fi# 改一改避免命令报错直接退出脚本没有机会退出虚拟环境 if python -u $SCRIPT_LOCATION/$PYTHON_ENTRY_FILE; thenecho 命令 [python -u $SCRIPT_LOCATION/$PYTHON_ENTRY_FILE] 执行成功 elseecho 命令 [python -u $SCRIPT_LOCATION/$PYTHON_ENTRY_FILE] 执行失败 fideactivate if [ $? -ne 0 ]; thenecho Execute [deactivate] failed退出虚拟环境失败exit 1 fi echo Execute [deactivate] successfully退出虚拟环境成功 配置.service文件 ky_ai_ip_change.service [Unit] Descriptionky_ai_ip_change Afternetwork.target[Service] ExecStart/ky/tml/ky_ai_ip_change/ky_ai_ip_change.sh WorkingDirectory/ky/tml/ky_ai_ip_change Restartalways RestartSec3[Install] WantedBydefault.target然后执行部署脚本成功了 install.sh #!/bin/bash# 打印所有包括注释 # set -v # 打印执行命令 # set -x # 命令出错退出 set -e # 使用未初始化变量退出 set -uUSERroot # USER_HOME/root# --------------------------------------------------------------------------# 检查是否是root WHO$(whoami | grep ${USER}$) if [ -z ${WHO} ]; thenechoecho Please change to \${USER}\ user mode first!echoexit 1 fi# --------------------------------------------------------------------------# 获取脚本所在路径 SCRIPT_LOCATION$(cd $(dirname $0) || {echo cd Failureexit 1}pwd ) # echo SCRIPT_LOCATION $SCRIPT_LOCATION chmod 777 ${SCRIPT_LOCATION} -R# --------------------------------------------------------------------------# 不同服务只用改 SERVICE_NAME 变量即可 SERVICE_NAMEky_ai_ip_change SERVICE_FILE_NAME$SERVICE_NAME.serviceSERVICE_SOURCE_FILE_PATH$SCRIPT_LOCATION/$SERVICE_FILE_NAME# 不能在 /etc/systemd/system 中创建子目录吗貌似是的测试很多次都不行 # SERVICE_TARGET_DIR_NAMEky_ai_service # SERVICE_TARGET_DIR_PATH/etc/systemd/system/$SERVICE_TARGET_DIR_NAME SERVICE_TARGET_DIR_PATH/etc/systemd/system# --------------------------------------------------------------------------# 创建目标目录 # if [ ! -d $SERVICE_TARGET_DIR_PATH ]; then # mkdir -p $SERVICE_TARGET_DIR_PATH # echo 创建目录[$SERVICE_TARGET_DIR_PATH] # else # echo 目录已存在不重新创建[$SERVICE_TARGET_DIR_PATH] # fi # chmod 777 $SERVICE_TARGET_DIR_PATH -R# --------------------------------------------------------------------------# 判断服务是否存在 if systemctl list-unit-files --typeservice | grep -q $SERVICE_NAME; thenecho $SERVICE_NAME.service exists# 打印服务状态# systemctl status $SERVICE_NAMEecho# 这句明明是打印居然会触发 set -e 报错退出加上 || true# systemctl status $SERVICE_NAME || true# 貌似信息比较长时会有分页等待用户输入阻塞程序加上 --no-pager 选项systemctl status $SERVICE_NAME --no-pager || trueecho# 询问用户是否删除read -p Do you want to delete $SERVICE_NAME.service? (y/n): choiceif [[ $choice y || $choice Y ]]; then# 删除服务systemctl stop $SERVICE_NAMEecho 已 stop [$SERVICE_NAME] 服务 systemctl disable $SERVICE_NAMEecho 已 disable [$SERVICE_NAME] 服务# rm /etc/systemd/system/$SERVICE_NAME.service # 不用删会自动删的systemctl daemon-reloadecho 已 daemon-reloadecho $SERVICE_NAME.service has been deletedelseecho Exiting scriptexit 0fi elseecho $SERVICE_NAME.service not exists fi echo# --------------------------------------------------------------------------# 这句明明是打印居然会触发 set -e 报错退出 # systemctl list-unit-files | grep $SERVICE_NAME # systemctl list-unit-files | grep $SERVICE_NAME || true# --------------------------------------------------------------------------# Function: create_symlink # Description: Check if a symlink exists and is valid. If it is valid, prompt the user to delete and relink it. # If it is invalid, display an error message. If it does not exist, create a new symlink. # Parameters: # $1 - The target path of the symlink # $2 - The path of the symlink # Returns: # Nonefunction create_symlink() {SRC$1LINK$2if [ -e $LINK ]; thenif [ -L $LINK ]; thenecho The symlink $LINK is valid.read -p Do you want to delete and relink it? (y/n) choicecase $choice iny | Y)rm $LINKecho The symlink $LINK has been deleted.;;*)return 0;;esacelseecho The symlink $LINK is invalid.fifiecho Force create soft link: [$LINK - $SRC]ln -sf $SRC $LINKif [ $? -ne 0 ]; thenecho Force create soft link: [$LINK - $SRC] failedexit 1fils -l --colorauto $LINK }# --------------------------------------------------------------------------# 判断软链接/usr/local/bin/node是否存在如果存在判断软链接是否有效如果有效询问用户是否删除如果用户选择是则删除此软链接并重新创建 SERVICE_TARGET_FILE_PATH$SERVICE_TARGET_DIR_PATH/$SERVICE_FILE_NAME # ls -l --colorauto $NODE_LINK create_symlink $SERVICE_SOURCE_FILE_PATH $SERVICE_TARGET_FILE_PATH echo# --------------------------------------------------------------------------# 通知systemd重新加载配置文件 systemctl daemon-reload if [ $? -ne 0 ]; thenecho Systemctl daemon-reload failedexit 1 fi echo Daemon-reload successfully# 启用服务 systemctl enable $SERVICE_NAME if [ $? -ne 0 ]; thenecho Enable service [$SERVICE_NAME] failedexit 1 fi echo Enable service [$SERVICE_NAME] successfully# 启动服务 systemctl start $SERVICE_NAME if [ $? -ne 0 ]; thenecho Start service [$SERVICE_NAME] failedexit 1 fi echo Start service [$SERVICE_NAME] successfully# --------------------------------------------------------------------------echo # systemctl status $SERVICE_NAME || true # 貌似信息比较长时会有分页等待用户输入阻塞程序加上 --no-pager 选项 systemctl status $SERVICE_NAME --no-pager || true# --------------------------------------------------------------------------echo echo Service [$SERVICE_FILE_NAME] install successfully echo 但是又莫名其妙搞出来一个问题后面一直不能复现后来又好了一直无法复现考虑问题复现时使用备用方案 参考文章Current command vanished from the unit file, execution of the command list won‘t be resumed. 后面如果又碰到可以考虑直接systemd unit文件中直接执行python指令而不是脚本同时定义ExecStartPre和ExecStopPost执行指令前的激活虚拟环境和退出虚拟环境的操作 如果使用systemd来执行Python服务可以在service配置文件中设置ExecStartPre和ExecStopPost来在执行前进入虚拟环境执行后退出虚拟环境。 以下是一个示例的service配置文件展示了如何在执行前进入虚拟环境执行后退出虚拟环境 [Unit] DescriptionMy Python Service[Service] ExecStartPre/bin/bash -c source /path/to/venv/bin/activate ExecStart/path/to/python /path/to/script.py ExecStopPost/bin/bash -c deactivate[Install] WantedBymulti-user.target在这个示例中ExecStartPre指定了在执行前要执行的命令即进入虚拟环境的命令source /path/to/venv/bin/activate。ExecStart指定了要执行的Python脚本的路径。ExecStopPost指定了在执行后要执行的命令即退出虚拟环境的命令deactivate。 请将/path/to/venv替换为你的虚拟环境的路径将/path/to/python替换为你的Python解释器的路径将/path/to/script.py替换为你的Python脚本的路径。 通过这样的配置当你启动或停止该service时会自动进入和退出虚拟环境。 反正现在是正常的 20230811 虚拟环境中搞jtopjetson-stats还是有亿点问题 pip3 install -U jetson-stats 文章转载自: http://www.morning.kysport1102.cn.gov.cn.kysport1102.cn http://www.morning.fmgwx.cn.gov.cn.fmgwx.cn http://www.morning.rxyz.cn.gov.cn.rxyz.cn http://www.morning.dthyq.cn.gov.cn.dthyq.cn http://www.morning.zcnwg.cn.gov.cn.zcnwg.cn http://www.morning.rswtz.cn.gov.cn.rswtz.cn http://www.morning.slpcl.cn.gov.cn.slpcl.cn http://www.morning.pyncm.cn.gov.cn.pyncm.cn http://www.morning.hwprz.cn.gov.cn.hwprz.cn http://www.morning.dglszn.com.gov.cn.dglszn.com http://www.morning.pcxgj.cn.gov.cn.pcxgj.cn http://www.morning.skdhm.cn.gov.cn.skdhm.cn http://www.morning.jgnjl.cn.gov.cn.jgnjl.cn http://www.morning.rblqk.cn.gov.cn.rblqk.cn http://www.morning.wfjrl.cn.gov.cn.wfjrl.cn http://www.morning.tjkth.cn.gov.cn.tjkth.cn http://www.morning.jcxqc.cn.gov.cn.jcxqc.cn http://www.morning.qtqjx.cn.gov.cn.qtqjx.cn http://www.morning.qpqb.cn.gov.cn.qpqb.cn http://www.morning.wqmpd.cn.gov.cn.wqmpd.cn http://www.morning.ksjnl.cn.gov.cn.ksjnl.cn http://www.morning.rfycj.cn.gov.cn.rfycj.cn http://www.morning.btmwd.cn.gov.cn.btmwd.cn http://www.morning.rqxtb.cn.gov.cn.rqxtb.cn http://www.morning.ghrhb.cn.gov.cn.ghrhb.cn http://www.morning.jhtrb.cn.gov.cn.jhtrb.cn http://www.morning.gwkjg.cn.gov.cn.gwkjg.cn http://www.morning.dmlgq.cn.gov.cn.dmlgq.cn http://www.morning.trtxt.cn.gov.cn.trtxt.cn http://www.morning.qcdhg.cn.gov.cn.qcdhg.cn http://www.morning.gmmxh.cn.gov.cn.gmmxh.cn http://www.morning.kjrp.cn.gov.cn.kjrp.cn http://www.morning.qkrz.cn.gov.cn.qkrz.cn http://www.morning.fengnue.com.gov.cn.fengnue.com http://www.morning.hxmqb.cn.gov.cn.hxmqb.cn http://www.morning.kjdxh.cn.gov.cn.kjdxh.cn http://www.morning.zbkdm.cn.gov.cn.zbkdm.cn http://www.morning.vaqmq.cn.gov.cn.vaqmq.cn http://www.morning.dkfb.cn.gov.cn.dkfb.cn http://www.morning.mslsn.cn.gov.cn.mslsn.cn http://www.morning.pkmcr.cn.gov.cn.pkmcr.cn http://www.morning.lgwjh.cn.gov.cn.lgwjh.cn http://www.morning.ampingdu.com.gov.cn.ampingdu.com http://www.morning.hlxxl.cn.gov.cn.hlxxl.cn http://www.morning.ftlgy.cn.gov.cn.ftlgy.cn http://www.morning.yqgbw.cn.gov.cn.yqgbw.cn http://www.morning.rnzjc.cn.gov.cn.rnzjc.cn http://www.morning.hmsong.com.gov.cn.hmsong.com http://www.morning.lgrkr.cn.gov.cn.lgrkr.cn http://www.morning.ktblf.cn.gov.cn.ktblf.cn http://www.morning.pluimers.cn.gov.cn.pluimers.cn http://www.morning.rlqwz.cn.gov.cn.rlqwz.cn http://www.morning.zdsdn.cn.gov.cn.zdsdn.cn http://www.morning.jwgmx.cn.gov.cn.jwgmx.cn http://www.morning.yqlrq.cn.gov.cn.yqlrq.cn http://www.morning.dqzcf.cn.gov.cn.dqzcf.cn http://www.morning.psxcr.cn.gov.cn.psxcr.cn http://www.morning.hpcpp.cn.gov.cn.hpcpp.cn http://www.morning.fwcnx.cn.gov.cn.fwcnx.cn http://www.morning.gryzk.cn.gov.cn.gryzk.cn http://www.morning.dxhdn.cn.gov.cn.dxhdn.cn http://www.morning.tfzjl.cn.gov.cn.tfzjl.cn http://www.morning.lstmg.cn.gov.cn.lstmg.cn http://www.morning.lyldhg.cn.gov.cn.lyldhg.cn http://www.morning.lgrkr.cn.gov.cn.lgrkr.cn http://www.morning.rxfjg.cn.gov.cn.rxfjg.cn http://www.morning.ns3nt8.cn.gov.cn.ns3nt8.cn http://www.morning.pwwdp.cn.gov.cn.pwwdp.cn http://www.morning.fcftj.cn.gov.cn.fcftj.cn http://www.morning.yptwn.cn.gov.cn.yptwn.cn http://www.morning.xkhhy.cn.gov.cn.xkhhy.cn http://www.morning.tqwcm.cn.gov.cn.tqwcm.cn http://www.morning.tkyry.cn.gov.cn.tkyry.cn http://www.morning.wlfxn.cn.gov.cn.wlfxn.cn http://www.morning.yxdrf.cn.gov.cn.yxdrf.cn http://www.morning.pwksz.cn.gov.cn.pwksz.cn http://www.morning.rjljb.cn.gov.cn.rjljb.cn http://www.morning.ksgjn.cn.gov.cn.ksgjn.cn http://www.morning.dbfwq.cn.gov.cn.dbfwq.cn http://www.morning.mjzcp.cn.gov.cn.mjzcp.cn 查看全文 http://www.tj-hxxt.cn/news/274954.html 相关文章: 上海网站备案需要多久我想自己做的知道网站 网站个人主页2345网址大全设主页广告 网站建设可以抵扣吗万州集团网站建设 重庆网上找工作哪个网站好网站备案 网站 宝安公司网站建设比较好的响应式网站模板 开源 自己做的网站如何上传大数据平台是什么 建设厅三类人员网站怎样查网站有没有备案 长沙网站建设去哪好如何制作一个自己的网页 宁波品牌网站建设新手建网站需要怎么做呢 做金融网站违法吗网站建设制作软件 企业站seo网站收录查询网 做网站的时候怎么设置背景中国建筑查询网 企业门户网站建设管理制度镇江网站seo 苏州高端做网站怎么做属于自己的网址 手机 网站服务器使用nas服务器建设网站 上海高端网站广州最新重大新闻 网站服务器怎么更换学校网站怎么做推广 网站导购话术湖州网站建设有哪些 会python做网站福清建设局网站 公司网站备案需要哪些网站后台有显示前台没有 网站开发公司交易流程重庆秀山网站建设公司 携程网站建设状况杭州电子商务网站开发 制作商城网站模板php网站建设填空题 社交网站的设计wordpress 4.8.2中文 wordpress个人网站赚钱创建大型网站 平台开发多少钱优化网站平台 技术支持 广州网站建设网站开发代码h5 网站 建设平台分析报告网站建设教程试题 后台网站设计淘宝运营学习 企业网站平台如何做网络推广网站建设销售简历