mirror of
https://github.com/arch3rPro/1Panel-Appstore.git
synced 2026-04-14 16:07:13 +08:00
feat: create app PortNote
This commit is contained in:
56
apps/portnote/README.md
Normal file
56
apps/portnote/README.md
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
<div align="center">
|
||||||
|
<h1><b>PortNote</b></h1>
|
||||||
|
<p>
|
||||||
|
轻量级服务器端口管理与可视化工具
|
||||||
|
<br />
|
||||||
|
<a href="https://github.com/crocofied/PortNote"><strong>GitHub</strong></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<br />
|
||||||
|
|
||||||
|
> [!提示]
|
||||||
|
> PortNote 是一款轻量级服务器端口管理与可视化工具,适合资产与端口信息管理,支持多平台部署。
|
||||||
|
|
||||||
|
## 主要功能
|
||||||
|
- 端口信息可视化管理
|
||||||
|
- 支持多服务器、多端口批量管理
|
||||||
|
- 端口用途、负责人、备注等信息记录
|
||||||
|
- 支持端口状态标记(如已用、空闲、保留等)
|
||||||
|
- 支持导入导出(JSON、Excel)
|
||||||
|
- 支持 Docker 一键部署
|
||||||
|
- 支持自定义字段
|
||||||
|
- 支持多用户协作
|
||||||
|
|
||||||
|
## 快速开始
|
||||||
|
### Docker 部署
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
-p 8080:8080 \
|
||||||
|
-v $PWD/data:/app/data \
|
||||||
|
--name portnote \
|
||||||
|
crocofied/portnote:latest
|
||||||
|
```
|
||||||
|
- 默认访问地址:http://localhost:8080
|
||||||
|
- 数据将持久化到挂载的 `data` 目录
|
||||||
|
|
||||||
|
### 其他部署方式
|
||||||
|
详见[官方文档](https://github.com/crocofied/PortNote/blob/main/README.md)
|
||||||
|
|
||||||
|
## 截图
|
||||||
|
<p align="center">
|
||||||
|
<img alt="screenshot" src="https://raw.githubusercontent.com/crocofied/PortNote/main/docs/images/portnote-main.png" width="80%">
|
||||||
|
</p>
|
||||||
|
|
||||||
|
## 常见问题 FAQ
|
||||||
|
- **Q: 支持哪些平台?**
|
||||||
|
A: 支持 Docker、Linux、Windows、MacOS。
|
||||||
|
- **Q: 如何备份数据?**
|
||||||
|
A: 数据默认保存在挂载的 data 目录,直接备份该目录即可。
|
||||||
|
- **Q: 支持多用户协作吗?**
|
||||||
|
A: 支持,可为不同用户分配不同权限。
|
||||||
|
- **Q: 支持自定义端口字段吗?**
|
||||||
|
A: 支持,可在设置中自定义字段。
|
||||||
|
|
||||||
|
## 相关链接
|
||||||
|
- GitHub: https://github.com/crocofied/PortNote
|
||||||
|
- 官方文档: https://github.com/crocofied/PortNote/blob/main/README.md
|
||||||
56
apps/portnote/README_en.md
Normal file
56
apps/portnote/README_en.md
Normal file
@@ -0,0 +1,56 @@
|
|||||||
|
<div align="center">
|
||||||
|
<h1><b>PortNote</b></h1>
|
||||||
|
<p>
|
||||||
|
Lightweight server port management and visualization tool
|
||||||
|
<br />
|
||||||
|
<a href="https://github.com/crocofied/PortNote"><strong>GitHub</strong></a>
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<br />
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
> PortNote is a lightweight server port management and visualization tool, suitable for asset and port information management, supporting cross-platform deployment.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
- Visual management of port information
|
||||||
|
- Batch management for multiple servers and ports
|
||||||
|
- Record port usage, owner, remarks, etc.
|
||||||
|
- Mark port status (used, idle, reserved, etc.)
|
||||||
|
- Import/export (JSON, Excel)
|
||||||
|
- One-click Docker deployment
|
||||||
|
- Custom fields supported
|
||||||
|
- Multi-user collaboration
|
||||||
|
|
||||||
|
## Getting Started
|
||||||
|
### Docker Deployment
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
-p 8080:8080 \
|
||||||
|
-v $PWD/data:/app/data \
|
||||||
|
--name portnote \
|
||||||
|
crocofied/portnote:latest
|
||||||
|
```
|
||||||
|
- Default access: http://localhost:8080
|
||||||
|
- Data will be persisted in the mounted `data` directory
|
||||||
|
|
||||||
|
### Other Deployment Methods
|
||||||
|
See the [official documentation](https://github.com/crocofied/PortNote/blob/main/README.md) for details.
|
||||||
|
|
||||||
|
## Screenshot
|
||||||
|
<p align="center">
|
||||||
|
<img alt="screenshot" src="https://raw.githubusercontent.com/crocofied/PortNote/main/docs/images/portnote-main.png" width="80%">
|
||||||
|
</p>
|
||||||
|
|
||||||
|
## FAQ
|
||||||
|
- **Q: Which platforms are supported?**
|
||||||
|
A: Docker, Linux, Windows, MacOS are supported.
|
||||||
|
- **Q: How to backup data?**
|
||||||
|
A: Data is stored in the mounted data directory, just backup this directory.
|
||||||
|
- **Q: Does it support multi-user collaboration?**
|
||||||
|
A: Yes, you can assign different permissions to different users.
|
||||||
|
- **Q: Can I customize port fields?**
|
||||||
|
A: Yes, you can customize fields in the settings.
|
||||||
|
|
||||||
|
## Links
|
||||||
|
- GitHub: https://github.com/crocofied/PortNote
|
||||||
|
- Documentation: https://github.com/crocofied/PortNote/blob/main/README.md
|
||||||
34
apps/portnote/data.yml
Normal file
34
apps/portnote/data.yml
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
name: PortNote
|
||||||
|
|
||||||
|
tags:
|
||||||
|
- 运维
|
||||||
|
- 资产管理
|
||||||
|
- 端口管理
|
||||||
|
- 可视化
|
||||||
|
- Docker
|
||||||
|
- 网络
|
||||||
|
|
||||||
|
title: 服务器端口管理与可视化工具
|
||||||
|
|
||||||
|
description: 轻量级服务器端口管理与可视化工具,支持多平台部署,适合资产与端口信息管理。
|
||||||
|
|
||||||
|
additionalProperties:
|
||||||
|
key: portnote
|
||||||
|
name: PortNote
|
||||||
|
tags:
|
||||||
|
- Tool
|
||||||
|
- Port
|
||||||
|
- Network
|
||||||
|
- Ops
|
||||||
|
shortDescZh: 轻量级服务器端口管理与可视化工具,支持多平台部署。
|
||||||
|
shortDescEn: Lightweight server port management and visualization tool, cross-platform supported.
|
||||||
|
description:
|
||||||
|
zh: PortNote 是一款轻量级服务器端口管理与可视化工具,支持多平台部署,适合资产与端口信息管理。
|
||||||
|
en: PortNote is a lightweight server port management and visualization tool, suitable for asset and port information management.
|
||||||
|
type: website
|
||||||
|
crossVersionUpdate: true
|
||||||
|
limit: 0
|
||||||
|
recommend: 0
|
||||||
|
website: https://github.com/crocofied/PortNote
|
||||||
|
github: https://github.com/crocofied/PortNote
|
||||||
|
document: https://github.com/crocofied/PortNote/blob/main/README.md
|
||||||
19
apps/portnote/latest/data.yml
Normal file
19
apps/portnote/latest/data.yml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: 30000
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
labelEn: Port
|
||||||
|
labelZh: 端口
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
- default: ""
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_DB_USER_PASSWORD
|
||||||
|
labelEn: Database Password
|
||||||
|
labelZh: 数据库用户密码
|
||||||
|
random: true
|
||||||
|
required: true
|
||||||
|
rule: paramComplexity
|
||||||
|
type: password
|
||||||
34
apps/portnote/latest/docker-compose.yml
Normal file
34
apps/portnote/latest/docker-compose.yml
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
services:
|
||||||
|
web:
|
||||||
|
image: haedlessdev/portnote:latest
|
||||||
|
container_name: portnote
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- "${PANEL_APP_PORT_HTTP}:3000"
|
||||||
|
environment:
|
||||||
|
JWT_SECRET: "changeme_jwt_secret"
|
||||||
|
USER_SECRET: "changeme_user_secret"
|
||||||
|
LOGIN_USERNAME: "admin"
|
||||||
|
LOGIN_PASSWORD: "admin"
|
||||||
|
DATABASE_URL: "postgresql://postgres:${PANEL_DB_USER_PASSWORD}@db:5432/postgres"
|
||||||
|
depends_on:
|
||||||
|
db:
|
||||||
|
condition: service_started
|
||||||
|
agent:
|
||||||
|
image: haedlessdev/portnote-agent:latest
|
||||||
|
environment:
|
||||||
|
DATABASE_URL: "postgresql://postgres:${PANEL_DB_USER_PASSWORD}@db:5432/postgres"
|
||||||
|
depends_on:
|
||||||
|
db:
|
||||||
|
condition: service_started
|
||||||
|
db:
|
||||||
|
image: postgres:17
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
POSTGRES_USER: postgres
|
||||||
|
POSTGRES_PASSWORD: ${PANEL_DB_USER_PASSWORD}
|
||||||
|
POSTGRES_DB: postgres
|
||||||
|
volumes:
|
||||||
|
- postgres_data:/var/lib/postgresql/data
|
||||||
|
volumes:
|
||||||
|
postgres_data:
|
||||||
19
apps/portnote/v1.2.0/data.yml
Normal file
19
apps/portnote/v1.2.0/data.yml
Normal file
@@ -0,0 +1,19 @@
|
|||||||
|
additionalProperties:
|
||||||
|
formFields:
|
||||||
|
- default: 30000
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_APP_PORT_HTTP
|
||||||
|
labelEn: Port
|
||||||
|
labelZh: 端口
|
||||||
|
required: true
|
||||||
|
rule: paramPort
|
||||||
|
type: number
|
||||||
|
- default: ""
|
||||||
|
edit: true
|
||||||
|
envKey: PANEL_DB_USER_PASSWORD
|
||||||
|
labelEn: Database Password
|
||||||
|
labelZh: 数据库用户密码
|
||||||
|
random: true
|
||||||
|
required: true
|
||||||
|
rule: paramComplexity
|
||||||
|
type: password
|
||||||
34
apps/portnote/v1.2.0/docker-compose.yml
Normal file
34
apps/portnote/v1.2.0/docker-compose.yml
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
services:
|
||||||
|
web:
|
||||||
|
image: haedlessdev/portnote:v1.2.0
|
||||||
|
container_name: portnote
|
||||||
|
restart: always
|
||||||
|
ports:
|
||||||
|
- "${PANEL_APP_PORT_HTTP}:3000"
|
||||||
|
environment:
|
||||||
|
JWT_SECRET: "changeme_jwt_secret"
|
||||||
|
USER_SECRET: "changeme_user_secret"
|
||||||
|
LOGIN_USERNAME: "admin"
|
||||||
|
LOGIN_PASSWORD: "admin"
|
||||||
|
DATABASE_URL: "postgresql://postgres:${PANEL_DB_USER_PASSWORD}@db:5432/postgres"
|
||||||
|
depends_on:
|
||||||
|
db:
|
||||||
|
condition: service_started
|
||||||
|
agent:
|
||||||
|
image: haedlessdev/portnote-agent:v1.2.0
|
||||||
|
environment:
|
||||||
|
DATABASE_URL: "postgresql://postgres:${PANEL_DB_USER_PASSWORD}@db:5432/postgres"
|
||||||
|
depends_on:
|
||||||
|
db:
|
||||||
|
condition: service_started
|
||||||
|
db:
|
||||||
|
image: postgres:17
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
POSTGRES_USER: postgres
|
||||||
|
POSTGRES_PASSWORD: ${PANEL_DB_USER_PASSWORD}
|
||||||
|
POSTGRES_DB: postgres
|
||||||
|
volumes:
|
||||||
|
- postgres_data:/var/lib/postgresql/data
|
||||||
|
volumes:
|
||||||
|
postgres_data:
|
||||||
Reference in New Issue
Block a user