mirror of
https://github.com/psviderski/uncloud.git
synced 2026-08-26 19:13:34 +00:00
* feat: support compose.yaml `service.gpus` and `service.deploy.resources.reservations.devices` DeviceRequests to Docker container * Fix lint error * Adjust test comments to work with linter * Rename DeviceRequests to DeviceReservations to be more consistent with compose nomenclature * Device reservation changes are immutable and should trigger a container recreate rather than update
23 lines
695 B
Go
23 lines
695 B
Go
package api
|
|
|
|
import (
|
|
"github.com/docker/docker/api/types/container"
|
|
)
|
|
|
|
const (
|
|
MilliCore = 1_000_000
|
|
Core = 1000 * MilliCore
|
|
)
|
|
|
|
type ContainerResources struct {
|
|
// CPU is the maximum amount of CPU nanocores (1000000000 = 1 CPU core) the container can use.
|
|
CPU int64
|
|
// Memory is the maximum amount of memory (in bytes) the container can use.
|
|
Memory int64
|
|
// MemoryReservation is the minimum amount of memory (in bytes) the container needs to run efficiently.
|
|
// TODO: implement a placement constraint that checks available memory on machines.
|
|
MemoryReservation int64
|
|
// Device reservations/requests for access to things like GPUs
|
|
DeviceReservations []container.DeviceRequest
|
|
}
|