type
status
date
slug
summary
tags
category
icon
password
教程参考:

一、创建仓库(gitee)
建议使用
gitee
,速度快。

二、安装git及使用
2.1 安装git
下载地址:
‣—官网(需科学上网)
—国内
在项目文件夹创建
gitignore
文件,将以下网址中的内容复过来,这样,上传代码的时候可以忽略很多不需要上传的文件。2.2 常用git命令
- 一次性执行
- 经常执行
第一次提交会提示输入账号和密码。

三、服务器配置
4.1 git同步代码
1.先安装git
git
命令
我是用的
ubuntu
服务器,首先:第一次要输入码云账号和密码。
后面本地修改代码后:
- 冲突处理
以
hc_data.json
为例,先解决冲突,然后执行你不想手动解决冲突,只想以远程代码为准,可以使用以下命令来强制拉取远程代码并覆盖本地更改:
如果你只想覆盖冲突的文件,而不是所有文件,可以使用以下命令:
这个命令会以远程代码为准来解决冲突。你可以对每个冲突的文件执行这个命令,然后标记这些文件为已解决:
最后,提交这些更改:
- 免密登录
输入一下命令,默认生成再
/root/.ssh
中拷贝
/root/.ssh/id_rsa.pub
文件中内容,粘贴到gitee
设置中的SSH
公钥中。输入:
4.2 安装python
- 安装
gcc
- 安装
python
依赖
各依赖作用
zlib1g
是zlib
库的运行时库。zlib1g-dev
是zlib
库的开发包,包含头文件和静态库。
bzip2
是bzip2
压缩库的运行时库。libbz2-dev
是bzip2
压缩库的开发包,包含头文件和静态库。
libncurses5
是ncurses
库的运行时库。libncurses5-dev
是ncurses
库的开发包,包含头文件和静态库。
libreadline-dev
是readline
库的开发包,包含头文件和静态库。
libssl-dev
是OpenSSL
库的开发包,包含头文件和静态库。
xz-utils
是XZ Utils
的运行时库。liblzma-dev
是XZ Utils
的开发包,包含头文件和静态库。
sqlite3
是SQLite
数据库的运行时库。libsqlite3-dev
是SQLite
数据库的开发包,包含头文件和静态库。
gdbm
是GNU dbm
数据库的运行时库。libgdbm-dev
是GNU dbm
数据库的开发包,包含头文件和静态库。
tk
是Tkinter
库的运行时库。tk-dev
是Tkinter
库的开发包,包含头文件和静态库。
libmysqlclient-dev
是MySQL
客户端库的开发包,用于与MySQL
数据库进行交互。
python-dev
是Python
的开发包,包含头文件和静态库,用于编译扩展模块。
libffi-dev
是libffi
库的开发包,用于支持C
语言调用其他语言的函数。
- 下载python源码
我用的是
Python-3.10.10
版本- 解压&编译&安装
- 解压
- 进入目录并编译安装
- python解释器配置豆瓣源
4.3 虚拟环境配置
- 安装虚拟环境
virtualenv
- 创建虚拟环境
(coe-panel)
在根目录创建一个
envs
文件夹用于存放所有虚拟环境:创建虚拟环境
coe-panel
- 激活虚拟环境

退出虚拟环境:
deactivate
4.4 安装配置uwsgi
- 在激活虚拟环境下安装uwsgi
- 基于uwsgi运行flask项目
- 命令的方式(不推荐)
- -配置文件(推荐)
- 在项目文件夹内创建
coe-panel_uwsgi.ini
配置文件
http
协议监听了8080
端口,让uwsgi
只用来处理动态请求⚠️PS:配置文件不要放注释
然后执行
coe-panel_uwsgi.ini
文件如果后台运行要关闭,查找
uwsgi
相关程序后kill
4.5 安装配置NGINX文件
- 安装
更新系统软件包:
安装
Nginx
- 配置
修改
niginx.conf
配置文件:/etc/nginx/niginx.conf
执行
sudo nginx -t
检查一下配置是否有误- 启动
4.6 域名和https
参考文章:利用Nginx代理被墙网站实现访问
4.7 tmux创建持久会话
在运行了
uwsgi --ini coe-panel_uwsgi.ini &
后,它会将 uwsgi
进程放入后台运行。但是,一旦断开 SSH 连接,会话结束时,该后台进程也会随之终止。
如果您希望在断开 SSH
连接后仍然保持 uwsgi
进程的运行,可以使用tmux
- 启动
tmux
会话:在终端中输入以下命令以启动一个新的tmux
会话:
复制
这将创建一个名为
"uwsgi-session"
的新会话。- 在
tmux
会话中运行命令: - 运行以下命令以激活虚拟环境:
- 运行
uwsgi
命令以启动应用程序:
uwsgi
进程将开始在 tmux
会话中运行。现在可以安全地断开 SSH 连接,而不会影响 uwsgi
进程。- 重新连接到
tmux
会话:当您需要再次连接到服务器并查看uwsgi
进程的输出时,可以使用以下命令重新连接到tmux
会话:
这将重新连接到之前创建的名为
"uwsgi-session"
的 tmux
会话。- 激活
tmux
会话:如果您当前没有激活tmux
会话,请使用以下命令重新连接到会话:
这里的
"uwsgi-session"
是之前创建的 tmux
会话名称。- 在
tmux
会话中执行退出命令:按下Ctrl + D
或输入exit
命令来退出tmux
会话。 - 如果会话中只有一个窗口,那么整个
tmux
会话将被终止。 - 如果会话中有多个窗口,那么您将退出当前窗口,但会话中的其他窗口仍然保持活动状态。
4.8 其他注意事项
- 我是
python
开发的项目,需要在虚拟环境中安装项目所需要的库,例如:
- 注意防火墙是否将相关端口打开
4.9 服务器常用命令
启动新
tmux
会话:tmux new-session -s uwsgi-session
重新连接到
tmux
会话:tmux attach-session -t uwsgi-session
激活虚拟环境:
source /envs/coe-panel/bin/activate
关闭虚拟环境:
deactivate
启动
uwsgi
配置后台运行:uwsgi --ini coe-panel_uwsgi.ini &
检查
nginx
配置:sudo nginx -t
重启
nginx
服务:sudo service nginx restart
查找
uwsgi
进程:ps aux | grep uwsgi
- 作者:DOU~
- 链接:https://blog.xiaohuadou.com/article/post-55
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。