feat: v2.0 全面升级 - SSH密钥管理/模板中心/文件分发/全新UI
- 新增SSH密钥库管理(集中托管私钥、自动指纹识别) - 新增模板中心(24个预置模板,7大分类,一键创建Playbook) - 新增文件分发功能(内容/文件双模式,权限设置) - 新增系统信息接口(版本/主机数/运行时间) - 主机支持密码/SSH密钥双认证方式 - 全新暗色玻璃拟态UI(侧边栏导航、SSE实时日志流) - 修复UpdateHost ID丢失bug - 添加.gitignore排除敏感数据
This commit is contained in:
@@ -0,0 +1,70 @@
|
||||
---
|
||||
- name: 部署Python应用
|
||||
hosts: "{{ target_hosts | default('all') }}"
|
||||
become: yes
|
||||
vars:
|
||||
app_name: myapp
|
||||
app_dir: /opt/myapp
|
||||
python_version: python3
|
||||
venv_dir: /opt/myapp/venv
|
||||
gunicorn_port: 8000
|
||||
gunicorn_workers: 4
|
||||
app_user: www-data
|
||||
|
||||
tasks:
|
||||
- name: 安装Python和依赖
|
||||
package:
|
||||
name:
|
||||
- "{{ python_version }}"
|
||||
- "{{ python_version }}-venv"
|
||||
- python3-pip
|
||||
state: present
|
||||
|
||||
- name: 创建应用目录
|
||||
file:
|
||||
path: "{{ app_dir }}"
|
||||
state: directory
|
||||
owner: "{{ app_user }}"
|
||||
mode: '0755'
|
||||
|
||||
- name: 创建虚拟环境
|
||||
shell: "{{ python_version }} -m venv {{ venv_dir }}"
|
||||
args:
|
||||
creates: "{{ venv_dir }}/bin/activate"
|
||||
|
||||
- name: 安装Gunicorn
|
||||
pip:
|
||||
name: gunicorn
|
||||
virtualenv: "{{ venv_dir }}"
|
||||
|
||||
- name: 创建Systemd服务
|
||||
copy:
|
||||
content: |
|
||||
[Unit]
|
||||
Description={{ app_name }} Gunicorn Service
|
||||
After=network.target
|
||||
|
||||
[Service]
|
||||
User={{ app_user }}
|
||||
WorkingDirectory={{ app_dir }}
|
||||
ExecStart={{ venv_dir }}/bin/gunicorn --workers {{ gunicorn_workers }} --bind 0.0.0.0:{{ gunicorn_port }} app:app
|
||||
Restart=always
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
dest: /etc/systemd/system/{{ app_name }}.service
|
||||
notify: Restart App
|
||||
|
||||
- name: 启动服务
|
||||
systemd:
|
||||
name: "{{ app_name }}"
|
||||
state: started
|
||||
enabled: yes
|
||||
daemon_reload: yes
|
||||
|
||||
handlers:
|
||||
- name: Restart App
|
||||
systemd:
|
||||
name: "{{ app_name }}"
|
||||
state: restarted
|
||||
daemon_reload: yes
|
||||
Reference in New Issue
Block a user