1
0
mirror of https://github.com/bingohuang/docker-labs.git synced 2025-10-04 01:17:49 +08:00

Query DinD instances for running containers and list the published ports

so the user can reverse proxy to the instance/port easily.
This commit is contained in:
Jonathan Leibiusky @xetorthio
2016-12-01 17:28:55 -03:00
parent afa47c0bfc
commit 77905f3fd8
7 changed files with 54 additions and 7 deletions

View File

@@ -141,10 +141,11 @@
$scope.connected = true;
});
socket.on('instance stats', function(name, mem, cpu, isManager) {
socket.on('instance stats', function(name, mem, cpu, isManager, ports) {
$scope.idx[name].mem = mem;
$scope.idx[name].cpu = cpu;
$scope.idx[name].isManager = isManager;
$scope.idx[name].ports = ports;
$scope.$apply();
});
@@ -167,6 +168,12 @@
});
}
$scope.getProxyUrl = function(instance, port) {
var url = window.location.protocol + '//ip' + instance.ip.replace(/\./g, '_') + '-' + port + '.' + window.location.host;
return url;
}
$scope.showInstance = function(instance) {
$scope.selectedInstance = instance;
if (!instance.creatingTerminal) {

View File

@@ -64,10 +64,17 @@
<md-card-title>
<md-card-title-text>
<span class="md-headline">{{instance.name}}</span>
<md-input-container class="md-icon-float md-block">
<label>IP</label>
<input ng-model="instance.ip" type="text" readonly="readonly">
</md-input-container>
<div layout-gt-sm="row">
<md-input-container class="md-icon-float md-block">
<label>IP</label>
<input ng-model="instance.ip" type="text" readonly="readonly">
</md-input-container>
<md-chips ng-model="instance.ports" name="port" readonly="true" md-removable="false">
<md-chip-template>
<strong><a href="{{getProxyUrl(instance, $chip)}}" title="{{getProxyUrl(instance, $chip)}}" target="_blank">{{$chip}}</a></strong>
</md-chip-template>
</md-chips>
</div>
<div layout-gt-sm="row">
<md-input-container class="md-block" flex-gt-sm>
<label>Memory</label>