luci-app-dockerman: sync with upstream source
This commit is contained in:
parent
e650508a4c
commit
fdd14d6b9b
@ -1,7 +1,7 @@
|
||||
include $(TOPDIR)/rules.mk
|
||||
|
||||
PKG_NAME:=luci-app-dockerman
|
||||
PKG_VERSION:=v0.5.6
|
||||
PKG_VERSION:=v0.5.7
|
||||
PKG_RELEASE:=beta
|
||||
PKG_MAINTAINER:=lisaac <https://github.com/lisaac/luci-app-dockerman>
|
||||
PKG_LICENSE:=AGPL-3.0
|
||||
|
||||
@ -46,11 +46,13 @@ function get_containers()
|
||||
-- if image ~= nil then
|
||||
-- image=image:sub(1,12)
|
||||
-- end
|
||||
|
||||
if v.Ports then
|
||||
if v.Ports and next(v.Ports) ~= nil then
|
||||
data[index]["_ports"] = nil
|
||||
for _,v2 in ipairs(v.Ports) do
|
||||
data[index]["_ports"] = (data[index]["_ports"] and (data[index]["_ports"] .. ", ") or "") .. (v2.PublicPort and (v2.PublicPort .. ":") or "") .. (v2.PrivatePort and (v2.PrivatePort .."/") or "") .. (v2.Type and v2.Type or "")
|
||||
data[index]["_ports"] = (data[index]["_ports"] and (data[index]["_ports"] .. ", ") or "")
|
||||
.. ((v2.PublicPort and v2.Type and v2.Type == "tcp") and ('<a href="javascript:void(0);" onclick="window.open(window.location.origin + \':\' + '.. v2.PublicPort ..', \'_blank\');">') or "")
|
||||
.. (v2.PublicPort and (v2.PublicPort .. ":") or "") .. (v2.PrivatePort and (v2.PrivatePort .."/") or "") .. (v2.Type and v2.Type or "")
|
||||
.. ((v2.PublicPort and v2.Type and v2.Type == "tcp")and "</a>" or "")
|
||||
end
|
||||
end
|
||||
for ii,iv in ipairs(images) do
|
||||
@ -98,6 +100,7 @@ container_ip = c_table:option(DummyValue, "_network", translate("Network"))
|
||||
container_ip.width="15%"
|
||||
container_ports = c_table:option(DummyValue, "_ports", translate("Ports"))
|
||||
container_ports.width="10%"
|
||||
container_ports.rawhtml = true
|
||||
container_image = c_table:option(DummyValue, "_image", translate("Image"))
|
||||
container_image.width="10%"
|
||||
container_command = c_table:option(DummyValue, "_command", translate("Command"))
|
||||
|
||||
@ -1,15 +1,18 @@
|
||||
<script type="text/javascript">//<![CDATA[
|
||||
function progressbar(v, m, pc, np) {
|
||||
let last_bw_tx
|
||||
let last_bw_rx
|
||||
let interval = 3
|
||||
function progressbar(v, m, pc, np, f) {
|
||||
m = m || 100
|
||||
|
||||
return String.format(
|
||||
'<div style="width:100%%; max-width:500px; position:relative; border:1px solid #999999">' +
|
||||
'<div style="background-color:#CCCCCC; width:%d%%; height:15px">' +
|
||||
'<div style="position:absolute; left:0; top:0; text-align:center; width:100%%; color:#000000">' +
|
||||
'<small>%s / %s ' + (np == true ? "" : '(%d%%)') + '</small>' +
|
||||
'<small>%s '+(f?f:'/')+' %s ' + (np ? "" : '(%d%%)') + '</small>' +
|
||||
'</div>' +
|
||||
'</div>' +
|
||||
'</div>', pc, v, m, pc
|
||||
'</div>', pc, v, m, pc, f
|
||||
);
|
||||
}
|
||||
|
||||
@ -22,7 +25,7 @@
|
||||
return parseFloat((bytes / Math.pow(k, i)).toFixed(dm)) + ' ' + sizes[i];
|
||||
}
|
||||
|
||||
XHR.poll(5, '/cgi-bin/luci/admin/docker/container_stats/<%=self.container_id%>', { status: 1 },
|
||||
XHR.poll(interval, '/cgi-bin/luci/admin/docker/container_stats/<%=self.container_id%>', { status: 1 },
|
||||
function (x, info) {
|
||||
var e;
|
||||
|
||||
@ -36,24 +39,41 @@
|
||||
((100 / (info.memory.mem_limit ? info.memory.mem_limit : 100)) * (info.memory.mem_useage ? info.memory.mem_useage : 0))
|
||||
);
|
||||
|
||||
let num = 1
|
||||
for (var key in info.bw_rxtx) {
|
||||
if (!document.getElementById("cbi-table-network_" + key + "-value")) {
|
||||
for (var eth in info.bw_rxtx) {
|
||||
if (!document.getElementById("cbi-table-speed_" + eth + "-value")) {
|
||||
let tab = document.getElementById("cbi-table-cpu").parentNode
|
||||
num++
|
||||
let div = document.getElementById('cbi-table-cpu').cloneNode(true);
|
||||
div.id = "cbi-table-network_" + key;
|
||||
div.children[0].innerHTML = "<%:Network TX/RX%>: " + key
|
||||
div.children[1].id = "cbi-table-network_" + key + "-value"
|
||||
div.id = "cbi-table-speed_" + eth;
|
||||
div.children[0].innerHTML = "<%:Upload/Download%>: " + eth
|
||||
div.children[1].id = "cbi-table-speed_" + eth + "-value"
|
||||
tab.appendChild(div)
|
||||
}
|
||||
e = document.getElementById("cbi-table-network_" + key + "-value")
|
||||
if (!document.getElementById("cbi-table-network_" + eth + "-value")) {
|
||||
let tab = document.getElementById("cbi-table-cpu").parentNode
|
||||
let div = document.getElementById('cbi-table-cpu').cloneNode(true);
|
||||
div.id = "cbi-table-network_" + eth;
|
||||
div.children[0].innerHTML = "<%:TX/RX%>: " + eth
|
||||
div.children[1].id = "cbi-table-network_" + eth + "-value"
|
||||
tab.appendChild(div)
|
||||
}
|
||||
e = document.getElementById("cbi-table-network_" + eth + "-value")
|
||||
e.innerHTML = progressbar(
|
||||
niceBytes(info.bw_rxtx[key].bw_tx),
|
||||
niceBytes(info.bw_rxtx[key].bw_rx),
|
||||
((100 / (info.bw_rxtx[key].bw_rx ? info.bw_rxtx[key].bw_rx : 100)) * (info.bw_rxtx[key].bw_tx ? info.bw_rxtx[key].bw_tx : 0)) > 100 ? 100 : Math.floor((100 / (info.bw_rxtx[key].bw_rx ? info.bw_rxtx[key].bw_rx : 100)) * (info.bw_rxtx[key].bw_tx ? info.bw_rxtx[key].bw_tx : 0)),
|
||||
true
|
||||
'↑'+niceBytes(info.bw_rxtx[eth].bw_tx),
|
||||
'↓'+niceBytes(info.bw_rxtx[eth].bw_rx),
|
||||
null,
|
||||
true, " "
|
||||
);
|
||||
e = document.getElementById("cbi-table-speed_" + eth + "-value")
|
||||
if (! last_bw_tx) last_bw_tx = info.bw_rxtx[eth].bw_tx
|
||||
if (! last_bw_rx) last_bw_rx = info.bw_rxtx[eth].bw_rx
|
||||
e.innerHTML = progressbar(
|
||||
'↑'+niceBytes((info.bw_rxtx[eth].bw_tx - last_bw_tx)/interval)+'/s',
|
||||
'↓'+niceBytes((info.bw_rxtx[eth].bw_rx - last_bw_rx)/interval)+'/s',
|
||||
null,
|
||||
true, " "
|
||||
);
|
||||
last_bw_tx = info.bw_rxtx[eth].bw_tx
|
||||
last_bw_rx = info.bw_rxtx[eth].bw_rx
|
||||
}
|
||||
|
||||
});
|
||||
|
||||
@ -292,8 +292,11 @@ msgstr "状态"
|
||||
msgid "Logs"
|
||||
msgstr "日志"
|
||||
|
||||
msgid "Network TX/RX"
|
||||
msgstr "网络发送/接收"
|
||||
msgid "TX/RX"
|
||||
msgstr "发送/接收"
|
||||
|
||||
msgid "Upload/Download"
|
||||
msgstr "上传/下载"
|
||||
|
||||
msgid "CPU Useage"
|
||||
msgstr "CPU用量"
|
||||
|
||||
Loading…
Reference in New Issue
Block a user