diff --git a/app/docker/components/datatables/containers-datatable/containersDatatable.html b/app/docker/components/datatables/containers-datatable/containersDatatable.html index 973c1c5e6..b2e67e014 100644 --- a/app/docker/components/datatables/containers-datatable/containersDatatable.html +++ b/app/docker/components/datatables/containers-datatable/containersDatatable.html @@ -156,13 +156,6 @@ - - - Host IP - - - - Published Ports @@ -186,8 +179,7 @@ - {{ item | containername | truncate: $ctrl.settings.containerNameTruncateSize }} - {{ item | swarmcontainername | truncate: $ctrl.settings.containerNameTruncateSize }} + {{ item | containername | truncate: $ctrl.settings.containerNameTruncateSize }} {{ item.Status }} @@ -204,7 +196,6 @@ {{ item.StackName ? item.StackName : '-' }} {{ item.Image | trimshasum }} {{ item.IP ? item.IP : '-' }} - {{ item.hostIP }} {{ p.public }}:{{ p.private }} diff --git a/app/docker/components/datatables/containers-datatable/containersDatatable.js b/app/docker/components/datatables/containers-datatable/containersDatatable.js index 2be1f84ff..01c12de81 100644 --- a/app/docker/components/datatables/containers-datatable/containersDatatable.js +++ b/app/docker/components/datatables/containers-datatable/containersDatatable.js @@ -10,7 +10,6 @@ angular.module('portainer.docker').component('containersDatatable', { reverseOrder: '<', showTextFilter: '<', showOwnershipColumn: '<', - swarmContainers: '<', publicUrl: '<', containerNameTruncateSize: '<', startAction: '<', diff --git a/app/docker/components/datatables/nodes-ss-datatable/nodesSSDatatable.html b/app/docker/components/datatables/nodes-ss-datatable/nodesSSDatatable.html deleted file mode 100644 index fd94a7726..000000000 --- a/app/docker/components/datatables/nodes-ss-datatable/nodesSSDatatable.html +++ /dev/null @@ -1,105 +0,0 @@ -
- - -
-
- {{ $ctrl.title }} -
-
- - Search - -
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - Name - - - - - - CPU - - - - - - Memory - - - - - - IP Address - - - - - - Engine - - - - - - Status - - - -
{{ item.name }}{{ item.cpu }}{{ item.memory }}{{ item.ip }}{{ item.version }}{{ item.status }}
Loading...
No node available.
-
- -
-
-
diff --git a/app/docker/components/datatables/nodes-ss-datatable/nodesSSDatatable.js b/app/docker/components/datatables/nodes-ss-datatable/nodesSSDatatable.js deleted file mode 100644 index 2b61854ff..000000000 --- a/app/docker/components/datatables/nodes-ss-datatable/nodesSSDatatable.js +++ /dev/null @@ -1,13 +0,0 @@ -angular.module('portainer.docker').component('nodesSsDatatable', { - templateUrl: 'app/docker/components/datatables/nodes-ss-datatable/nodesSSDatatable.html', - controller: 'GenericDatatableController', - bindings: { - title: '@', - titleIcon: '@', - dataset: '<', - tableKey: '@', - orderBy: '@', - reverseOrder: '<', - showTextFilter: '<' - } -}); diff --git a/app/docker/filters/filters.js b/app/docker/filters/filters.js index 7e03b5e7d..6c63f3c8f 100644 --- a/app/docker/filters/filters.js +++ b/app/docker/filters/filters.js @@ -162,12 +162,6 @@ angular.module('portainer.docker') return name.substring(1, name.length); }; }) -.filter('swarmcontainername', function () { - 'use strict'; - return function (container) { - return _.split(container.Names[0], '/')[2]; - }; -}) .filter('swarmversion', function () { 'use strict'; return function (text) { diff --git a/app/docker/helpers/infoHelper.js b/app/docker/helpers/infoHelper.js index 092439eb3..7421e1713 100644 --- a/app/docker/helpers/infoHelper.js +++ b/app/docker/helpers/infoHelper.js @@ -1,36 +1,31 @@ angular.module('portainer.docker') .factory('InfoHelper', [function InfoHelperFactory() { 'use strict'; - return { - determineEndpointMode: function(info) { - var mode = { - provider: '', - role: '' - }; - if (_.startsWith(info.ServerVersion, 'swarm')) { - mode.provider = 'DOCKER_SWARM'; - if (info.SystemStatus[0][1] === 'primary') { - mode.role = 'PRIMARY'; - } else { - mode.role = 'REPLICA'; - } + + var helper = {}; + + helper.determineEndpointMode = function(info) { + var mode = { + provider: '', + role: '' + }; + + if (!info.Swarm || _.isEmpty(info.Swarm.NodeID)) { + if (info.ID === 'vSphere Integrated Containers') { + mode.provider = 'VMWARE_VIC'; } else { - if (!info.Swarm || _.isEmpty(info.Swarm.NodeID)) { - if (info.ID === 'vSphere Integrated Containers') { - mode.provider = 'VMWARE_VIC'; - } else { - mode.provider = 'DOCKER_STANDALONE'; - } - } else { - mode.provider = 'DOCKER_SWARM_MODE'; - if (info.Swarm.ControlAvailable) { - mode.role = 'MANAGER'; - } else { - mode.role = 'WORKER'; - } - } + mode.provider = 'DOCKER_STANDALONE'; + } + } else { + mode.provider = 'DOCKER_SWARM_MODE'; + if (info.Swarm.ControlAvailable) { + mode.role = 'MANAGER'; + } else { + mode.role = 'WORKER'; } - return mode; } + return mode; }; + + return helper; }]); diff --git a/app/docker/services/networkService.js b/app/docker/services/networkService.js index a58969f6e..f28aaac08 100644 --- a/app/docker/services/networkService.js +++ b/app/docker/services/networkService.js @@ -31,7 +31,7 @@ angular.module('portainer.docker') return deferred.promise; }; - service.networks = function(localNetworks, swarmNetworks, swarmAttachableNetworks, globalNetworks) { + service.networks = function(localNetworks, swarmNetworks, swarmAttachableNetworks) { var deferred = $q.defer(); Network.query({}).$promise @@ -48,9 +48,6 @@ angular.module('portainer.docker') if (swarmAttachableNetworks && network.Scope === 'swarm' && network.Attachable === true) { return network; } - if (globalNetworks && network.Scope === 'global') { - return network; - } }).map(function (item) { return new NetworkViewModel(item); }); diff --git a/app/docker/views/containers/containers.html b/app/docker/views/containers/containers.html index 0c68ab89b..0630bbe04 100644 --- a/app/docker/views/containers/containers.html +++ b/app/docker/views/containers/containers.html @@ -14,7 +14,6 @@ dataset="containers" table-key="containers" order-by="Status" show-text-filter="true" show-ownership-column="applicationState.application.authentication" - swarm-containers="applicationState.endpoint.mode.provider === 'DOCKER_SWARM'" public-url="state.publicURL" container-name-truncate-size="truncate_size" start-action="startAction" diff --git a/app/docker/views/containers/containersController.js b/app/docker/views/containers/containersController.js index ae302b9ef..42384fe68 100644 --- a/app/docker/views/containers/containersController.js +++ b/app/docker/views/containers/containersController.js @@ -105,28 +105,10 @@ angular.module('portainer.docker') }); } - function retrieveSwarmHostsInfo(data) { - var swarm_hosts = {}; - var systemStatus = data.SystemStatus; - var node_count = parseInt(systemStatus[3][1], 10); - var node_offset = 4; - for (i = 0; i < node_count; i++) { - var host = {}; - host.name = _.trim(systemStatus[node_offset][0]); - host.ip = _.split(systemStatus[node_offset][1], ':')[0]; - swarm_hosts[host.name] = host.ip; - node_offset += 9; - } - return swarm_hosts; - } - - function assignContainers(containers, provider) { + function assignContainers(containers) { var previouslySelectedContainers = $transition$.params().selectedContainers || []; $scope.containers = containers.map(function (container) { container.Status = $filter('containerstatus')(container.Status); - if (provider === 'DOCKER_SWARM') { - container.hostIP = $scope.swarm_hosts[_.split(container.Names[0], '/')[1]]; - } var previousContainer = _.find(previouslySelectedContainers, function(item) { return item.Id === container.Id; @@ -143,15 +125,9 @@ angular.module('portainer.docker') function initView() { var provider = $scope.applicationState.endpoint.mode.provider; - $q.all({ - swarm: provider !== 'DOCKER_SWARM' || SystemService.info(), - containers: ContainerService.containers(1) - }) + ContainerService.containers(1) .then(function success(data) { - if (provider === 'DOCKER_SWARM') { - $scope.swarm_hosts = retrieveSwarmHostsInfo(data.swarm); - } - assignContainers(data.containers, provider); + assignContainers(data); }) .catch(function error(err) { Notifications.error('Failure', err, 'Unable to retrieve containers'); diff --git a/app/docker/views/containers/create/createContainerController.js b/app/docker/views/containers/create/createContainerController.js index b7ad04651..ef37ab363 100644 --- a/app/docker/views/containers/create/createContainerController.js +++ b/app/docker/views/containers/create/createContainerController.js @@ -183,9 +183,6 @@ function ($q, $scope, $state, $timeout, $transition$, $filter, Container, Contai var containerName = container; if (container && typeof container === 'object') { containerName = $filter('trimcontainername')(container.Names[0]); - if ($scope.applicationState.endpoint.mode.provider === 'DOCKER_SWARM') { - containerName = $filter('swarmcontainername')(container); - } } var networkMode = mode; if (containerName) { @@ -505,8 +502,7 @@ function ($q, $scope, $state, $timeout, $transition$, $filter, Container, Contai NetworkService.networks( provider === 'DOCKER_STANDALONE' || provider === 'DOCKER_SWARM_MODE', false, - provider === 'DOCKER_SWARM_MODE' && apiVersion >= 1.25, - provider === 'DOCKER_SWARM' + provider === 'DOCKER_SWARM_MODE' && apiVersion >= 1.25 ) .then(function success(data) { var networks = data; diff --git a/app/docker/views/containers/create/createcontainer.html b/app/docker/views/containers/create/createcontainer.html index 385b77e17..b77e6f866 100644 --- a/app/docker/views/containers/create/createcontainer.html +++ b/app/docker/views/containers/create/createcontainer.html @@ -307,10 +307,7 @@
- -
diff --git a/app/docker/views/containers/edit/containerController.js b/app/docker/views/containers/edit/containerController.js index c96578c7b..51af3bbae 100644 --- a/app/docker/views/containers/edit/containerController.js +++ b/app/docker/views/containers/edit/containerController.js @@ -274,8 +274,7 @@ function ($q, $scope, $state, $transition$, $filter, Container, Commit, Containe NetworkService.networks( provider === 'DOCKER_STANDALONE' || provider === 'DOCKER_SWARM_MODE', false, - provider === 'DOCKER_SWARM_MODE' && apiVersion >= 1.25, - provider === 'DOCKER_SWARM' + provider === 'DOCKER_SWARM_MODE' && apiVersion >= 1.25 ) .then(function success(data) { var networks = data; diff --git a/app/docker/views/dashboard/dashboard.html b/app/docker/views/dashboard/dashboard.html index 1aa573f33..638518c78 100644 --- a/app/docker/views/dashboard/dashboard.html +++ b/app/docker/views/dashboard/dashboard.html @@ -4,7 +4,7 @@
-
+
@@ -31,33 +31,6 @@
-
- - - - - - - - - - - - - - - - - - - - - - -
Nodes{{ infoData.SystemStatus[0][1] == 'primary' ? infoData.SystemStatus[3][1] : infoData.SystemStatus[4][1] }}
Swarm version{{ infoData.ServerVersion|swarmversion }}
Total CPU{{ infoData.NCPU }}
Total memory{{ infoData.MemTotal|humansize: 2 }}
-
-
-
diff --git a/app/docker/views/images/imagesController.js b/app/docker/views/images/imagesController.js index 42f1efc41..9b608615a 100644 --- a/app/docker/views/images/imagesController.js +++ b/app/docker/views/images/imagesController.js @@ -57,9 +57,6 @@ function ($scope, $state, ImageService, Notifications, ModalService) { }; function initView() { - var endpointProvider = $scope.applicationState.endpoint.mode.provider; - var apiVersion = $scope.applicationState.endpoint.apiVersion; - ImageService.images(true) .then(function success(data) { $scope.images = data; diff --git a/app/docker/views/networks/create/createNetworkController.js b/app/docker/views/networks/create/createNetworkController.js index 0f5f1f2b7..91ddba7db 100644 --- a/app/docker/views/networks/create/createNetworkController.js +++ b/app/docker/views/networks/create/createNetworkController.js @@ -119,17 +119,15 @@ function ($q, $scope, $state, PluginService, Notifications, NetworkService, Labe }; function initView() { - var endpointProvider = $scope.applicationState.endpoint.mode.provider; var apiVersion = $scope.applicationState.endpoint.apiVersion; - if(endpointProvider !== 'DOCKER_SWARM') { - PluginService.networkPlugins(apiVersion < 1.25) - .then(function success(data){ - $scope.availableNetworkDrivers = data; - }) - .catch(function error(err) { - Notifications.error('Failure', err, 'Unable to retrieve network drivers'); - }); - } + + PluginService.networkPlugins(apiVersion < 1.25) + .then(function success(data){ + $scope.availableNetworkDrivers = data; + }) + .catch(function error(err) { + Notifications.error('Failure', err, 'Unable to retrieve network drivers'); + }); } initView(); diff --git a/app/docker/views/swarm/swarm.html b/app/docker/views/swarm/swarm.html index cf678cc30..4e77f6140 100644 --- a/app/docker/views/swarm/swarm.html +++ b/app/docker/views/swarm/swarm.html @@ -16,48 +16,21 @@ Nodes - {{ swarm.Nodes }} - {{ info.Swarm.Nodes }} - - - Images - {{ info.Images }} - - - Swarm version - {{ docker.Version|swarmversion }} + {{ info.Swarm.Nodes }} Docker API version {{ docker.ApiVersion }} - - Strategy - {{ swarm.Strategy }} - Total CPU - {{ info.NCPU }} - {{ totalCPU }} + {{ totalCPU }} Total memory - {{ info.MemTotal|humansize: 2 }} - {{ totalMemory|humansize: 2 }} + {{ totalMemory|humansize: 2 }} - - Operating system - {{ info.OperatingSystem }} - - - Kernel version - {{ info.KernelVersion }} - - - Go version - {{ docker.GoVersion }} - - +
Go to cluster visualizer @@ -72,14 +45,7 @@
-
- -
-
+
- - @@ -297,7 +294,7 @@
-
+
@@ -316,7 +313,7 @@
- +
@@ -329,9 +326,6 @@ Deploy the container Deployment in progress... - - When using Swarm, we recommend deploying containers in a shared network. Looks like you don't have any shared network, head over the networks view to create one. - {{ state.formValidationError }}
diff --git a/app/docker/views/templates/templatesController.js b/app/docker/views/templates/templatesController.js index b050fc6df..8e5ada599 100644 --- a/app/docker/views/templates/templatesController.js +++ b/app/docker/views/templates/templatesController.js @@ -198,11 +198,8 @@ function ($scope, $q, $state, $transition$, $anchorScroll, $filter, ContainerSer } function determineContainerMapping(network) { - var endpointProvider = $scope.applicationState.endpoint.mode.provider; var containerMapping = 'BY_CONTAINER_IP'; - if (endpointProvider === 'DOCKER_SWARM' && network.Scope === 'global') { - containerMapping = 'BY_SWARM_CONTAINER_NAME'; - } else if (network.Name !== 'bridge') { + if (network.Name !== 'bridge') { containerMapping = 'BY_CONTAINER_NAME'; } return containerMapping; @@ -231,8 +228,8 @@ function ($scope, $q, $state, $transition$, $anchorScroll, $filter, ContainerSer networks: NetworkService.networks( provider === 'DOCKER_STANDALONE' || provider === 'DOCKER_SWARM_MODE', false, - provider === 'DOCKER_SWARM_MODE' && apiVersion >= 1.25, - provider === 'DOCKER_SWARM'), + provider === 'DOCKER_SWARM_MODE' && apiVersion >= 1.25 + ), settings: SettingsService.publicSettings() }) .then(function success(data) { diff --git a/app/docker/views/volumes/create/createVolumeController.js b/app/docker/views/volumes/create/createVolumeController.js index 249c05924..e9aab9c0d 100644 --- a/app/docker/views/volumes/create/createVolumeController.js +++ b/app/docker/views/volumes/create/createVolumeController.js @@ -75,17 +75,15 @@ function ($q, $scope, $state, VolumeService, PluginService, ResourceControlServi }; function initView() { - var endpointProvider = $scope.applicationState.endpoint.mode.provider; var apiVersion = $scope.applicationState.endpoint.apiVersion; - if (endpointProvider !== 'DOCKER_SWARM') { - PluginService.volumePlugins(apiVersion < 1.25 || endpointProvider === 'VMWARE_VIC') - .then(function success(data) { - $scope.availableVolumeDrivers = data; - }) - .catch(function error(err) { - Notifications.error('Failure', err, 'Unable to retrieve volume drivers'); - }); - } + + PluginService.volumePlugins(apiVersion < 1.25 || endpointProvider === 'VMWARE_VIC') + .then(function success(data) { + $scope.availableVolumeDrivers = data; + }) + .catch(function error(err) { + Notifications.error('Failure', err, 'Unable to retrieve volume drivers'); + }); } initView(); diff --git a/app/portainer/helpers/templateHelper.js b/app/portainer/helpers/templateHelper.js index 2922b91fe..a82c9d10a 100644 --- a/app/portainer/helpers/templateHelper.js +++ b/app/portainer/helpers/templateHelper.js @@ -68,8 +68,6 @@ angular.module('portainer.app') value = container.NetworkSettings.Networks[Object.keys(container.NetworkSettings.Networks)[0]].IPAddress; } else if (containerMapping === 'BY_CONTAINER_NAME') { value = $filter('containername')(envvar.value); - } else if (containerMapping === 'BY_SWARM_CONTAINER_NAME') { - value = $filter('swarmcontainername')(envvar.value); } } env.push(envvar.name + '=' + value);