mirror of
https://github.com/1Panel-dev/1Panel.git
synced 2025-01-19 16:29:17 +08:00
feat:显示当前ip,系统网络代理地址 (#6251)
This commit is contained in:
parent
a5e7f78a1f
commit
b18689a0d6
@ -16,7 +16,8 @@ type DashboardBase struct {
|
|||||||
KernelArch string `json:"kernelArch"`
|
KernelArch string `json:"kernelArch"`
|
||||||
KernelVersion string `json:"kernelVersion"`
|
KernelVersion string `json:"kernelVersion"`
|
||||||
VirtualizationSystem string `json:"virtualizationSystem"`
|
VirtualizationSystem string `json:"virtualizationSystem"`
|
||||||
|
IpV4Addr string `json:"ipv4Addr"`
|
||||||
|
SystemProxy string `json:"SystemProxy"`
|
||||||
CPUCores int `json:"cpuCores"`
|
CPUCores int `json:"cpuCores"`
|
||||||
CPULogicalCores int `json:"cpuLogicalCores"`
|
CPULogicalCores int `json:"cpuLogicalCores"`
|
||||||
CPUModelName string `json:"cpuModelName"`
|
CPUModelName string `json:"cpuModelName"`
|
||||||
|
@ -3,6 +3,8 @@ package service
|
|||||||
import (
|
import (
|
||||||
"encoding/json"
|
"encoding/json"
|
||||||
"fmt"
|
"fmt"
|
||||||
|
network "net"
|
||||||
|
"os"
|
||||||
"sort"
|
"sort"
|
||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
@ -94,11 +96,20 @@ func (u *DashboardService) LoadBaseInfo(ioOption string, netOption string) (*dto
|
|||||||
baseInfo.KernelVersion = hostInfo.KernelVersion
|
baseInfo.KernelVersion = hostInfo.KernelVersion
|
||||||
ss, _ := json.Marshal(hostInfo)
|
ss, _ := json.Marshal(hostInfo)
|
||||||
baseInfo.VirtualizationSystem = string(ss)
|
baseInfo.VirtualizationSystem = string(ss)
|
||||||
|
baseInfo.IpV4Addr = GetOutboundIP()
|
||||||
|
httpProxy := os.Getenv("http_proxy")
|
||||||
|
if httpProxy == "" {
|
||||||
|
httpProxy = os.Getenv("HTTP_PROXY")
|
||||||
|
}
|
||||||
|
if httpProxy != "" {
|
||||||
|
baseInfo.SystemProxy = httpProxy
|
||||||
|
}
|
||||||
|
baseInfo.SystemProxy = "noProxy"
|
||||||
appInstall, err := appInstallRepo.ListBy()
|
appInstall, err := appInstallRepo.ListBy()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
baseInfo.AppInstalledNumber = len(appInstall)
|
baseInfo.AppInstalledNumber = len(appInstall)
|
||||||
postgresqlDbs, err := postgresqlRepo.List()
|
postgresqlDbs, err := postgresqlRepo.List()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -208,6 +219,18 @@ func (u *DashboardService) LoadCurrentInfo(ioOption string, netOption string) *d
|
|||||||
return ¤tInfo
|
return ¤tInfo
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func GetOutboundIP() string {
|
||||||
|
conn, err := network.Dial("udp", "8.8.8.8:80")
|
||||||
|
|
||||||
|
if err != nil {
|
||||||
|
return "IPNotFound"
|
||||||
|
}
|
||||||
|
defer conn.Close()
|
||||||
|
|
||||||
|
localAddr := conn.LocalAddr().(*network.UDPAddr)
|
||||||
|
return localAddr.IP.String()
|
||||||
|
}
|
||||||
|
|
||||||
type diskInfo struct {
|
type diskInfo struct {
|
||||||
Type string
|
Type string
|
||||||
Mount string
|
Mount string
|
||||||
|
@ -22,6 +22,8 @@ export namespace Dashboard {
|
|||||||
kernelArch: string;
|
kernelArch: string;
|
||||||
kernelVersion: string;
|
kernelVersion: string;
|
||||||
virtualizationSystem: string;
|
virtualizationSystem: string;
|
||||||
|
ipv4Addr: string;
|
||||||
|
systemProxy: string;
|
||||||
|
|
||||||
cpuCores: number;
|
cpuCores: number;
|
||||||
cpuLogicalCores: number;
|
cpuLogicalCores: number;
|
||||||
|
@ -337,6 +337,8 @@ const message = {
|
|||||||
kernelArch: '系统类型',
|
kernelArch: '系统类型',
|
||||||
network: '流量',
|
network: '流量',
|
||||||
io: '磁盘 IO',
|
io: '磁盘 IO',
|
||||||
|
ip: '主机地址',
|
||||||
|
proxy: '系统代理',
|
||||||
baseInfo: '基本信息',
|
baseInfo: '基本信息',
|
||||||
totalSend: '总发送',
|
totalSend: '总发送',
|
||||||
totalRecv: '总接收',
|
totalRecv: '总接收',
|
||||||
|
@ -225,6 +225,28 @@
|
|||||||
</template>
|
</template>
|
||||||
{{ loadUpTime(currentInfo.uptime) }}
|
{{ loadUpTime(currentInfo.uptime) }}
|
||||||
</el-descriptions-item>
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item
|
||||||
|
v-if="baseInfo.ipv4Addr && baseInfo.ipv4Addr !== 'IPNotFound'"
|
||||||
|
class-name="system-content"
|
||||||
|
>
|
||||||
|
<template #label>
|
||||||
|
<span class="system-label">
|
||||||
|
{{ $t('home.ip') }}
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
{{ baseInfo.ipv4Addr }}
|
||||||
|
</el-descriptions-item>
|
||||||
|
<el-descriptions-item
|
||||||
|
v-if="baseInfo.systemProxy && baseInfo.systemProxy !== 'noProxy'"
|
||||||
|
class-name="system-content"
|
||||||
|
>
|
||||||
|
<template #label>
|
||||||
|
<span class="system-label">
|
||||||
|
{{ $t('home.proxy') }}
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
{{ baseInfo.systemProxy }}
|
||||||
|
</el-descriptions-item>
|
||||||
</el-descriptions>
|
</el-descriptions>
|
||||||
</el-scrollbar>
|
</el-scrollbar>
|
||||||
</template>
|
</template>
|
||||||
@ -303,7 +325,8 @@ const baseInfo = ref<Dashboard.BaseInfo>({
|
|||||||
kernelArch: '',
|
kernelArch: '',
|
||||||
kernelVersion: '',
|
kernelVersion: '',
|
||||||
virtualizationSystem: '',
|
virtualizationSystem: '',
|
||||||
|
ipv4Addr: '',
|
||||||
|
systemProxy: '',
|
||||||
cpuCores: 0,
|
cpuCores: 0,
|
||||||
cpuLogicalCores: 0,
|
cpuLogicalCores: 0,
|
||||||
cpuModelName: '',
|
cpuModelName: '',
|
||||||
|
Loading…
x
Reference in New Issue
Block a user