2022-07-06 06:08:45 +00:00
< page-header title = "'Docker features configuration'" breadcrumbs = "['Docker configuration']" > < / page-header >
2021-02-09 08:09:06 +00:00
< div class = "row" >
< div class = "col-sm-12" >
< rd-widget >
< rd-widget-body >
< form class = "form-horizontal" name = "$ctrl.form" >
2023-09-08 01:40:09 +00:00
< div class = "col-sm-12 form-section-title" > Host and filesystem < / div >
2024-07-11 20:45:50 +00:00
< div class = "form-group" >
2022-08-19 00:55:29 +00:00
< span class = "col-sm-12 text-muted small vertical-center" >
2022-11-28 02:00:28 +00:00
< pr-icon icon = "'info'" mode = "'primary'" class-name = "'space-right'" > < / pr-icon >
2024-07-11 20:45:50 +00:00
< span class = "text-muted"
>The environment must be < a href = "https://docs.portainer.io/start/agent" > running the Portainer Agent< / a > to use this functionality, and the root of the host must be
bind-mounted to < b > /host< / b > in the agent deployment. Check
< a href = "https://docs.portainer.io/user/docker/host/setup#enable-host-management-features" > our documentation< / a > for more information.< /span
>
2021-02-09 08:09:06 +00:00
< / span >
< / div >
< div class = "form-group" >
< div class = "col-sm-12" >
< por-switch-field
2021-12-14 19:14:53 +00:00
checked="$ctrl.formValues.enableHostManagementFeatures"
name="'enableHostManagementFeatures'"
label="'Enable host management features'"
tooltip="'Enable host management features: host system browsing and advanced host details.'"
label-class="'col-sm-7 col-lg-4'"
2021-02-09 08:09:06 +00:00
disabled="!$ctrl.isAgent"
2021-12-14 19:14:53 +00:00
on-change="($ctrl.onChangeEnableHostManagementFeatures)"
2021-02-09 08:09:06 +00:00
>< / por-switch-field >
< / div >
< / div >
< div class = "form-group" >
< div class = "col-sm-12" >
< por-switch-field
2021-12-14 19:14:53 +00:00
checked="$ctrl.formValues.allowVolumeBrowserForRegularUsers"
name="'allowVolumeBrowserForRegularUsers'"
label="'Enable volume management for non-administrators'"
tooltip="'When enabled, regular users will be able to use Portainer volume management features.'"
label-class="'col-sm-7 col-lg-4'"
on-change="($ctrl.onChangeAllowVolumeBrowserForRegularUsers)"
2021-02-09 08:09:06 +00:00
disabled="!$ctrl.isAgent"
>< / por-switch-field >
< / div >
< / div >
2021-11-02 20:57:21 +00:00
<!-- auto update window -->
2023-09-08 01:40:09 +00:00
< div class = "col-sm-12 form-section-title" > Change window setting < / div >
2021-11-02 20:57:21 +00:00
< div class = "form-group" >
< div class = "col-sm-12" >
< por-switch-field
2021-12-14 19:14:53 +00:00
checked="$ctrl.state.autoUpdateSettings.Enabled"
name="'disableSysctlSettingForRegularUsers'"
label="'Enable Change Window'"
label-class="'col-sm-7 col-lg-4'"
2023-03-01 21:14:50 +00:00
feature-id="$ctrl.limitedFeatureAutoUpdate"
2023-06-13 03:32:10 +00:00
tooltip="'Specify a time-frame during which GitOps updates can occur in this environment.'"
2021-12-14 19:14:53 +00:00
on-change="($ctrl.onToggleAutoUpdate)"
2021-11-02 20:57:21 +00:00
>
< / por-switch-field >
< / div >
< / div >
2021-02-09 08:09:06 +00:00
<!-- security -->
2023-09-08 01:40:09 +00:00
< div class = "col-sm-12 form-section-title" > Docker security settings < / div >
2021-02-09 08:09:06 +00:00
< div class = "form-group" >
< div class = "col-sm-12" >
< por-switch-field
2021-12-14 19:14:53 +00:00
checked="$ctrl.formValues.disableBindMountsForRegularUsers"
name="'disableBindMountsForRegularUsers'"
label="'Disable bind mounts for non-administrators'"
tooltip="'When enabled, regular users will not be able to use bind mounts when creating containers.'"
label-class="'col-sm-7 col-lg-4'"
on-change="($ctrl.onChangeDisableBindMountsForRegularUsers)"
2021-02-09 08:09:06 +00:00
>< / por-switch-field >
< / div >
< / div >
< div class = "form-group" >
< div class = "col-sm-12" >
< por-switch-field
2021-12-14 19:14:53 +00:00
checked="$ctrl.formValues.disablePrivilegedModeForRegularUsers"
name="'disablePrivilegedModeForRegularUsers'"
label="'Disable privileged mode for non-administrators'"
tooltip="'When enabled, regular users will not be able to use privileged mode when creating containers.'"
label-class="'col-sm-7 col-lg-4'"
on-change="($ctrl.onChangeDisablePrivilegedModeForRegularUsers)"
2021-02-09 08:09:06 +00:00
>< / por-switch-field >
< / div >
< / div >
< div class = "form-group" >
< div class = "col-sm-12" >
< por-switch-field
2021-12-14 19:14:53 +00:00
checked="$ctrl.formValues.disableHostNamespaceForRegularUsers"
name="'disableHostNamespaceForRegularUsers'"
label="'Disable the use of host PID 1 for non-administrators'"
tooltip="'Prevent users from accessing the host filesystem through the host PID namespace.'"
label-class="'col-sm-7 col-lg-4'"
on-change="($ctrl.onChangeDisableHostNamespaceForRegularUsers)"
2021-02-09 08:09:06 +00:00
>< / por-switch-field >
< / div >
< / div >
< div class = "form-group" >
< div class = "col-sm-12" >
< por-switch-field
2021-12-14 19:14:53 +00:00
checked="$ctrl.formValues.disableStackManagementForRegularUsers"
name="'disableStackManagementForRegularUsers'"
label="'Disable the use of Stacks for non-administrators'"
label-class="'col-sm-7 col-lg-4'"
on-change="($ctrl.onChangeDisableStackManagementForRegularUsers)"
2021-02-09 08:09:06 +00:00
>< / por-switch-field >
< / div >
< / div >
< div class = "form-group" >
< div class = "col-sm-12" >
< por-switch-field
2021-12-14 19:14:53 +00:00
checked="$ctrl.formValues.disableDeviceMappingForRegularUsers"
name="'disableDeviceMappingForRegularUsers'"
label="'Disable device mappings for non-administrators'"
label-class="'col-sm-7 col-lg-4'"
on-change="($ctrl.onChangeDisableDeviceMappingForRegularUsers)"
2021-02-09 08:09:06 +00:00
>< / por-switch-field >
< / div >
< / div >
< div class = "form-group" >
< div class = "col-sm-12" >
< por-switch-field
2021-12-14 19:14:53 +00:00
checked="$ctrl.formValues.disableContainerCapabilitiesForRegularUsers"
name="'disableContainerCapabilitiesForRegularUsers'"
label="'Disable container capabilities for non-administrators'"
label-class="'col-sm-7 col-lg-4'"
on-change="($ctrl.onChangeDisableContainerCapabilitiesForRegularUsers)"
2021-02-09 08:09:06 +00:00
>< / por-switch-field >
< / div >
< / div >
2021-04-12 07:40:45 +00:00
< div class = "form-group" >
< div class = "col-sm-12" >
< por-switch-field
2021-12-14 19:14:53 +00:00
checked="$ctrl.formValues.disableSysctlSettingForRegularUsers"
name="'disableSysctlSettingForRegularUsers'"
label="'Disable sysctl settings for non-administrators'"
label-class="'col-sm-7 col-lg-4'"
on-change="($ctrl.onChangeDisableSysctlSettingForRegularUsers)"
2021-04-12 07:40:45 +00:00
>< / por-switch-field >
< / div >
< / div >
2021-02-09 08:09:06 +00:00
< div class = "form-group" ng-if = "$ctrl.isContainerEditDisabled()" >
< span class = "col-sm-12 text-muted small" >
2022-11-28 02:00:28 +00:00
< pr-icon icon = "'info'" mode = "'primary'" class-name = "'mr-0.5'" > < / pr-icon >
2021-02-09 08:09:06 +00:00
Note: The recreate/duplicate/edit feature is currently disabled (for non-admin users) by one or more security settings.
< / span >
< / div >
<!-- !security -->
2023-03-01 21:14:50 +00:00
<!-- other -->
< div class = "col-sm-12 form-section-title" > Other < / div >
< div class = "form-group" >
2024-08-28 19:38:27 +00:00
< div class = "col-sm-12" ng-if = "!$ctrl.isDockerStandaloneEnv" >
< text-tip children = "'Showing GPU in the UI is currently only available with Docker Standalone and is limited to NVIDIA graphics cards.'" color = "'blue'" / >
2023-03-03 01:47:10 +00:00
< / div >
2024-08-28 19:38:27 +00:00
< / div >
< div class = "form-group" >
2023-03-01 21:14:50 +00:00
< div class = "col-sm-12" >
< por-switch-field
2023-03-03 01:47:10 +00:00
label="'Show GPU in the UI'"
tooltip="'This allows managing of GPUs for container/stack hardware acceleration via the Portainer UI.'"
checked="$ctrl.state.enableGPUManagement"
name="'enableGPUManagement'"
on-change="($ctrl.onToggleGPUManagement)"
label-class="'col-sm-7 col-lg-4'"
disabled="!$ctrl.isDockerStandaloneEnv"
>< / por-switch-field >
< / div >
2024-08-28 19:38:27 +00:00
< div ng-if = "$ctrl.state.enableGPUManagement" >
< div class = "col-sm-12" >
< text-tip children = "'GPU support is currently limited to NVIDIA graphics cards only.'" color = "'blue'" / >
< / div >
< div class = "col-sm-12" >
< div class = "pl-4" >
< gpus-list ng-if = "$ctrl.state.enableGPUManagement" value = "$ctrl.endpoint.Gpus" on-change = "($ctrl.onGpusChange)" > < / gpus-list >
< / div >
2023-03-03 01:47:10 +00:00
< / div >
< / div >
2024-08-28 19:38:27 +00:00
< / div >
< div class = "form-group" >
2023-03-03 01:47:10 +00:00
< div class = "col-sm-12" >
< por-switch-field
2024-01-24 01:22:15 +00:00
label="'Show image up to date indicators for Stacks, Services and Containers'"
2023-03-01 21:14:50 +00:00
checked="false"
name="'outOfDateImageToggle'"
label-class="'col-sm-7 col-lg-4'"
feature-id="$ctrl.limitedFeatureUpToDateImage"
>< / por-switch-field >
< / div >
< / div >
<!-- !other -->
2021-02-09 08:09:06 +00:00
<!-- actions -->
2022-01-17 05:53:32 +00:00
< div class = "col-sm-12 form-section-title" > Actions < / div >
2021-02-09 08:09:06 +00:00
< div class = "form-group" >
< div class = "col-sm-12" >
2023-03-03 01:47:10 +00:00
< button
type="button"
class="btn btn-primary btn-sm !ml-0"
ng-click="$ctrl.save()"
ng-disabled="$ctrl.state.actionInProgress"
button-spinner="$ctrl.state.actionInProgress"
>
2021-02-09 08:09:06 +00:00
< span ng-hide = "$ctrl.state.actionInProgress" > Save configuration< / span >
< span ng-show = "$ctrl.state.actionInProgress" > Saving...< / span >
< / button >
< / div >
< / div >
<!-- !actions -->
< / form >
< / rd-widget-body >
< / rd-widget >
< / div >
< / div >