diff --git a/pkg/app/instances/docker.go b/pkg/app/instances/docker.go index 849b8737..aad8af85 100644 --- a/pkg/app/instances/docker.go +++ b/pkg/app/instances/docker.go @@ -367,6 +367,7 @@ func (m *DockerInstanceManager) createDockerVolumeIfNeeded(ctx context.Context, func (m *DockerInstanceManager) createDockerContainer(ctx context.Context, user accounts.User) (string, error) { config := &container.Config{ AttachStdin: true, + Env: []string{"NVIDIA_DRIVER_CAPABILITIES=all"}, Image: m.Config.Docker.DockerImageName, Tty: true, Labels: dockerLabelsDict(user), @@ -380,6 +381,15 @@ func (m *DockerInstanceManager) createDockerContainer(ctx context.Context, user }, }, Privileged: true, + Resources: container.Resources{ + DeviceRequests: []container.DeviceRequest{ + { + Count: -1, + Capabilities: [][]string{{"gpu"}}, + }, + }, + }, + Runtime: "nvidia", } createRes, err := m.Client.ContainerCreate(ctx, config, hostConfig, nil, nil, "") if err != nil { diff --git a/pkg/cli/cvd.go b/pkg/cli/cvd.go index 0811bb04..cc1d676a 100644 --- a/pkg/cli/cvd.go +++ b/pkg/cli/cvd.go @@ -180,6 +180,9 @@ const uaEnvConfigTmplStr = ` }, "disk": { "default_build": "{{.Artifacts}}" + }, + "graphics": { + "gpu_mode": "gfxstream" } } ]