oci_opts.go 718 B

1234567891011121314151617181920212223242526
  1. package daemon
  2. import (
  3. "context"
  4. "github.com/containerd/containerd/containers"
  5. coci "github.com/containerd/containerd/oci"
  6. "github.com/docker/docker/container"
  7. specs "github.com/opencontainers/runtime-spec/specs-go"
  8. )
  9. // WithConsoleSize sets the initial console size
  10. func WithConsoleSize(c *container.Container) coci.SpecOpts {
  11. return func(ctx context.Context, _ coci.Client, _ *containers.Container, s *coci.Spec) error {
  12. if c.HostConfig.ConsoleSize[0] > 0 || c.HostConfig.ConsoleSize[1] > 0 {
  13. if s.Process == nil {
  14. s.Process = &specs.Process{}
  15. }
  16. s.Process.ConsoleSize = &specs.Box{
  17. Height: c.HostConfig.ConsoleSize[0],
  18. Width: c.HostConfig.ConsoleSize[1],
  19. }
  20. }
  21. return nil
  22. }
  23. }