container_linux.go 784 B

12345678910111213141516171819202122232425262728293031
  1. //go:build !windows
  2. // +build !windows
  3. package daemon // import "github.com/docker/docker/daemon"
  4. import (
  5. "github.com/docker/docker/container"
  6. "github.com/docker/docker/errdefs"
  7. )
  8. func (daemon *Daemon) saveAppArmorConfig(container *container.Container) error {
  9. container.AppArmorProfile = "" // we don't care about the previous value.
  10. if !daemon.apparmorEnabled {
  11. return nil // if apparmor is disabled there is nothing to do here.
  12. }
  13. if err := parseSecurityOpt(container, container.HostConfig); err != nil {
  14. return errdefs.InvalidParameter(err)
  15. }
  16. if !container.HostConfig.Privileged {
  17. if container.AppArmorProfile == "" {
  18. container.AppArmorProfile = defaultAppArmorProfile
  19. }
  20. } else {
  21. container.AppArmorProfile = unconfinedAppArmorProfile
  22. }
  23. return nil
  24. }