v0.0.2: Java应用模板、任务中心占位符修复、端口映射修复、WFJ Panel品牌统一
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
-- ============================================================
|
||||
-- Java 应用模板 —— 应用商店热更新(支持选择 Java 版本)
|
||||
-- 执行方式:在 appstore 数据库中运行此 SQL
|
||||
-- 执行后在 WFJ Panel 应用商店点击「同步」即可看到新模板
|
||||
-- ============================================================
|
||||
|
||||
-- ─── 扩大端口字段长度,以容纳占位符(如 {{CONTAINER_PORT}} 为 18 字符,原 VARCHAR(16) 不够)───
|
||||
ALTER TABLE app_ports MODIFY COLUMN host_port VARCHAR(32) NOT NULL COMMENT '宿主机端口';
|
||||
ALTER TABLE app_ports MODIFY COLUMN container_port VARCHAR(32) NOT NULL COMMENT '容器端口';
|
||||
|
||||
-- ─── 主表 ───
|
||||
-- image 使用 {{JAVA_IMAGE}} 占位符,部署时由用户选择的 Java 版本替换
|
||||
INSERT INTO app_templates (app_key, name, tagline, description, icon, category, image, container_name, network, restart, hostname, workdir, command, sort_order, is_active)
|
||||
VALUES (
|
||||
'java',
|
||||
'Java 应用',
|
||||
'运行 Java jar 或 war 文件',
|
||||
'Java 镜像默认工作目录为 /app。将主机中包含 jar/war 文件的目录挂载到 /app,通过自定义启动命令运行 Java 应用。支持 JVM 参数、环境变量、Profile 等灵活配置。适合部署 Spring Boot、Quarkus 等打包为 jar 的 Java 服务。',
|
||||
'java',
|
||||
'运行时',
|
||||
'{{JAVA_IMAGE}}',
|
||||
'{{CONTAINER_NAME}}',
|
||||
'',
|
||||
'always',
|
||||
'',
|
||||
'/app',
|
||||
'{{START_COMMAND}}',
|
||||
4,
|
||||
1
|
||||
);
|
||||
|
||||
SET @java_id = LAST_INSERT_ID();
|
||||
|
||||
-- ─── 端口映射:宿主机端口 → 容器端口(Java 应用必须暴露端口才能访问)───
|
||||
INSERT INTO app_ports (template_id, host_port, container_port, protocol, sort_order) VALUES
|
||||
(@java_id, '{{HOST_PORT}}', '{{CONTAINER_PORT}}', 'tcp', 0);
|
||||
|
||||
-- ─── 挂载卷:宿主机应用目录 → /app ───
|
||||
INSERT INTO app_volumes (template_id, host_path, container_path, mode, sort_order) VALUES
|
||||
(@java_id, '{{APP_DIR}}', '/app', 'rw', 0);
|
||||
|
||||
-- ─── 用户参数 ───
|
||||
INSERT INTO app_params (template_id, param_key, label, type, placeholder, default_value, required, options, show_when, sort_order) VALUES
|
||||
-- Java 版本下拉选择,value 即完整镜像地址
|
||||
(@java_id, 'JAVA_IMAGE', 'Java 版本', 'select', '', '', 1,
|
||||
'[{"value":"bitnami/java:latest","label":"Java Latest (最新版)"},{"value":"bitnami/java:21","label":"Java 21 LTS"},{"value":"bitnami/java:17","label":"Java 17 LTS"},{"value":"bitnami/java:11","label":"Java 11 LTS"},{"value":"bitnami/java:8","label":"Java 8 LTS"}]',
|
||||
NULL, 0),
|
||||
(@java_id, 'CONTAINER_NAME', '容器名称', 'text', 'java-app', 'java-app', 1, NULL, NULL, 1),
|
||||
-- 启动命令:完全自定义,支持 JVM 参数、Spring Profile 等
|
||||
-- 常见示例:
|
||||
-- java -jar app.jar
|
||||
-- java -jar app.jar --spring.profiles.active=prod
|
||||
-- java -Xmx512m -Xms256m -jar app.jar
|
||||
-- java -Xmx512m -Dserver.port=8080 -jar app.jar --spring.profiles.active=prod
|
||||
(@java_id, 'START_COMMAND', '启动命令', 'text', 'java -jar app.jar', 'java -jar app.jar', 1, NULL, NULL, 2),
|
||||
(@java_id, 'APP_DIR', '宿主机应用目录', 'path', '/path/to/app', '', 1, NULL, NULL, 3),
|
||||
-- 宿主机端口:外部访问端口,默认 8080
|
||||
(@java_id, 'HOST_PORT', '宿主机端口', 'number', '8080', '8080', 1, NULL, NULL, 4),
|
||||
-- 容器端口:Java 应用监听端口,需与启动命令中 server.port 一致,默认 8080
|
||||
(@java_id, 'CONTAINER_PORT', '容器端口', 'number', '8080', '8080', 1, NULL, NULL, 5);
|
||||
Reference in New Issue
Block a user