|
- {{ volume.Id|truncate:25 }} |
+ {{ volume.Id|truncate:25 }} |
{{ volume.Driver }} |
{{ volume.Mountpoint | truncate:52 }} |
diff --git a/app/models/docker/image.js b/app/models/docker/image.js
index d050cfe9f..d6188a37d 100644
--- a/app/models/docker/image.js
+++ b/app/models/docker/image.js
@@ -3,6 +3,7 @@ function ImageViewModel(data) {
this.Tag = data.Tag;
this.Repository = data.Repository;
this.Created = data.Created;
+ this.Containers = data.dataUsage.Containers;
this.Checked = false;
this.RepoTags = data.RepoTags;
this.VirtualSize = data.VirtualSize;
diff --git a/app/rest/docker/system.js b/app/rest/docker/system.js
index ccc3e61e2..242f1f120 100644
--- a/app/rest/docker/system.js
+++ b/app/rest/docker/system.js
@@ -12,6 +12,7 @@ angular.module('portainer.rest')
method: 'GET', params: { action: 'events', since: '@since', until: '@until' },
isArray: true, transformResponse: jsonObjectsToArrayHandler
},
- auth: { method: 'POST', params: { action: 'auth' } }
+ auth: { method: 'POST', params: { action: 'auth' } },
+ dataUsage: { method: 'GET', params: { action: 'system/df' } }
});
}]);
diff --git a/app/services/docker/imageService.js b/app/services/docker/imageService.js
index 2966abdaf..8a1e49fb8 100644
--- a/app/services/docker/imageService.js
+++ b/app/services/docker/imageService.js
@@ -1,5 +1,5 @@
angular.module('portainer.services')
-.factory('ImageService', ['$q', 'Image', 'ImageHelper', 'RegistryService', 'HttpRequestHelper', function ImageServiceFactory($q, Image, ImageHelper, RegistryService, HttpRequestHelper) {
+.factory('ImageService', ['$q', 'Image', 'ImageHelper', 'RegistryService', 'HttpRequestHelper', 'SystemService', function ImageServiceFactory($q, Image, ImageHelper, RegistryService, HttpRequestHelper, SystemService) {
'use strict';
var service = {};
@@ -22,9 +22,17 @@ angular.module('portainer.services')
service.images = function() {
var deferred = $q.defer();
- Image.query({}).$promise
+
+ $q.all({
+ dataUsage: SystemService.dataUsage(),
+ images: Image.query({}).$promise
+ })
.then(function success(data) {
- var images = data.map(function (item) {
+ var images = data.images.map(function(item) {
+ item.dataUsage = data.dataUsage.Images.find(function(usage) {
+ return item.Id === usage.Id;
+ });
+
return new ImageViewModel(item);
});
deferred.resolve(images);
diff --git a/app/services/docker/systemService.js b/app/services/docker/systemService.js
index 4b4bf85b2..4c017c0be 100644
--- a/app/services/docker/systemService.js
+++ b/app/services/docker/systemService.js
@@ -40,6 +40,10 @@ angular.module('portainer.services')
return deferred.promise;
};
+
+ service.dataUsage = function () {
+ return System.dataUsage().$promise;
+ };
return service;
}]);
diff --git a/assets/css/app.css b/assets/css/app.css
index 3eb9b9c4e..e9b61a130 100644
--- a/assets/css/app.css
+++ b/assets/css/app.css
@@ -513,3 +513,8 @@ ul.sidebar .sidebar-list .sidebar-sublist a.active {
opacity: 0.9;
}
/*!toaster override*/
+
+.monospaced {
+ font-family: monospace;
+ font-weight: 600;
+}
\ No newline at end of file
|