论坛
潜水/灌水快乐,沉淀知识,认识更多同行。
ToB圈子
加入IT圈,遇到更多同好之人。
朋友圈
看朋友圈动态,了解ToB世界。
ToB门户
了解全球最新的ToB事件
博客
Blog
排行榜
Ranklist
文库
业界最专业的IT文库,上传资料也可以赚钱
下载
分享
Share
导读
Guide
相册
Album
记录
Doing
搜索
本版
文章
帖子
ToB圈子
用户
免费入驻
产品入驻
解决方案入驻
公司入驻
案例入驻
登录
·
注册
只需一步,快速开始
账号登录
立即注册
找回密码
用户名
Email
自动登录
找回密码
密码
登录
立即注册
首页
找靠谱产品
找解决方案
找靠谱公司
找案例
找对的人
专家智库
悬赏任务
圈子
SAAS
IT评测·应用市场-qidao123.com
»
论坛
›
软件与程序人生
›
后端开发
›
Java
›
在Ubuntu小装备上利用VSCode+SSH开辟部署nicegui的Web应 ...
在Ubuntu小装备上利用VSCode+SSH开辟部署nicegui的Web应用,并设置系统开机 ...
麻花痒
论坛元老
|
2024-10-22 11:56:42
|
显示全部楼层
|
阅读模式
楼主
主题
1043
|
帖子
1043
|
积分
3129
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要
登录
才可以下载或查看,没有账号?
立即注册
x
在一些小的装备上跑Ubuntu系统,需要快速的开辟和调解项目的时间,往往利用SSH举行远程的开辟测试,这样可以制止传统的打包更新处理,能够快速的在实际环境上测试具体的内容。另外由于系统装备往往需要重启后能够保留应用的工作,因此也需要在Ubuntu系统设置主动启动的服务处理。本篇随笔先容在Ubuntu小装备上利用VSCode+SSH开辟部署nicegui的Web应用,并设置系统开机主动启动应用。
1、利用VSCode+SSH开辟部署nicegui的Web应用
VSCode的功能非常强盛,利用扩展来实现更丰富的功能是它的重要特色之一,要利用远程开辟,我们需要安装Remote-SSH扩展来实现直接打开服务器端的文件举行开辟、编译等。
首先我们在扩展页面中找到微软的 Remote-SSH 扩展插件,给VSCode安装上。
如果你需要利用FTP的一些处理,也可以安装一个SFTP来配合VSCode实现文件的上传下载,不过即使不安装SFTP也没关系。
在VSCode下令面板中打开设置
在设置参数界面中指定Remote-SSH的设置文件,如下所示。
由于我是在Windows上开辟,因此设置如下所示。如果是MacOS或其他系统,有所差别。
安装完毕的Remote-SSH,会在左侧的导航中有一个SSH的项目,我们添加自己的服务器的IP和用户名信息,用来连接服务器。
一般格式如下所示,更换为自己的IP和登录系统用户:
Host 192.168.1.103
HostName 192.168.1.103
User root
复制代码
发起连接到服务器的操纵后,会提示输入用户暗码:
成功后我们打开服务器的代码目录,如下所示。
然后开辟就和本地文件一样了,我们在上面编写代码、编译运行都是基于服务器的环境的,如果缺少模块引用,记得利用pip install举行安装依赖即可,安装也是给服务器环境举行的安装。
对服务器的SSH控制下令处理,我们可以通过VScode中的bash面板打开。
创建下令窗口后如下所示。
我们就可以基于这个举行相关的下令操纵了,就和本地下令处理类似了。
VScode上对服务器文件的操纵很方便,可以直接拖动本地文件到服务器目录上,也可以从服务器目录上下载代码文件到本地。
2、设置Ubuntu系统开机主动启动应用
有时间,我们在实际环境上部署项目后,都是希望每次重启,相关的应用能主动启动,制止每次手工干预的繁琐。
1) 编写启动脚本
首先我们在我们的项目代码上,创建一个脚本,用于启动服务引用的,如创建文件:start_my_backend.sh
然后填写内容,这个和我们实际运行python项目的下令差不多一样。
#!/bin/bash
# 启动Python后端程序
/usr/bin/python /root/test/src/nicegui/modularization/main.py
复制代码
确保路径是正确的,并且指向你的 Python 解释器和 Python 脚本文件。
注意文件开头 #!/bin/bash 是标识为Bash下令的特性,如下文件在目录中所示。
给予脚本执行权限
:
chmod +x /root/test/src/start_my_backend.sh
复制代码
2)创建 systemd 服务文件
然后再 /etc/systemd/system/ 目录上创建一个服务启动的处理,命名为:my_backend.service
添加下面的内容:
[Unit]
Description=My Python Backend Service
After=network.target
[Service]
ExecStart=/root/test/src/start_my_backend.sh
Restart=always
User=root
WorkingDirectory=/root/test/src
Environment="PATH=/usr/bin"
[Install]
WantedBy=multi-user.target
复制代码
解释:
ExecStart 指定了要执行的脚本路径。
User 指定哪个用户运行该服务。
Restart=always 表示当服务崩溃时,会主动重启。
WorkingDirectory 是脚本的工作目录。
生存并退出编辑器(按 Ctrl+O 然后 Ctrl+X)。
3)启用并启动服务
重新加载 systemd 设置:
sudo systemctl daemon-reload
复制代码
启用服务,使其开机启动:
sudo systemctl enable my_backend.service
复制代码
立刻启动服务:
sudo systemctl start my_backend.service
复制代码
查抄服务状态,确认它是否正常运行:
sudo systemctl status my_backend.service
复制代码
日志检察
如果你想检察服务的运行日志,可以利用以下下令:
journalctl -u my_backend.service
复制代码
这样,每次系统启动时,my_backend 服务就会主动启动并运行你的 Python 后端步伐了。
最后检察服务器端的启动项目端口是否正常。
这样,从服务器上直接编写代码开辟大概调试,并直接主动启动服务器,就实现了我们通例的开辟处理了。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复
使用道具
举报
0 个回复
倒序浏览
返回列表
快速回复
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
or
立即注册
本版积分规则
发表回复
回帖并转播
回帖后跳转到最后一页
发新帖
回复
麻花痒
论坛元老
这个人很懒什么都没写!
楼主热帖
【SQL server速成之路】——身份验证及 ...
2022年安装Kali Linux最详细过程,以及 ...
ping命令 网络抓包 分析
容器开发运维人员的 Linux 操作机配置 ...
窄带传输与LoRa扩频传输技术应用方案对 ...
我今年12岁了,我喜欢打游戏,怎么能成 ...
密码学奇妙之旅、02 混合加密系统、AES ...
程序员坐牢了,会被安排去写代码吗? ...
猜
kubectl使用技巧:如何更方便地操作多 ...
标签云
AI
运维
CIO
存储
服务器
浏览过的版块
云原生
物联网
移动端开发
程序人生
分布式数据库
SQL-Server
Oracle
网络安全
Mysql
快速回复
返回顶部
返回列表