原始输出
[
{
"Id": "c2496d852ee3affd295a177e9f26f163a53da8d11e3708d6a479f189f707ad0b",
"Created": "2024-08-04T02:43:24.909341103Z",
"Path": "/",
"Args": [],
"State": {
"Status": "running",
"Running": true,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 1308978,
"ExitCode": 0,
"Error": "",
"StartedAt": "2024-08-14T11:31:49.644923079Z",
"FinishedAt": "2024-08-14T11:31:49.206669276Z"
},
"Image": "sha256:629ec4df10b1d0202f30c9f379dea586ead067722597cedb0f3ebb9eb3337065",
"ResolvConfPath": "/var/lib/docker/containers/c2496d852ee3affd295a177e9f26f163a53da8d11e3708d6a479f189f707ad0b/",
"HostnamePath": "/var/lib/docker/containers/c2496d852ee3affd295a177e9f26f163a53da8d11e3708d6a479f189f707ad0b/hostname",
"HostsPath": "/var/lib/docker/containers/c2496d852ee3affd295a177e9f26f163a53da8d11e3708d6a479f189f707ad0b/hosts",
"LogPath": "/var/lib/docker/containers/c2496d852ee3affd295a177e9f26f163a53da8d11e3708d6a479f189f707ad0b/",
"Name": "/lmdeploy",
"RestartCount": 0,
"Driver": "overlay2",
"Platform": "linux",
"MountLabel": "",
"ProcessLabel": "",
"AppArmorProfile": "docker-default",
"ExecIDs": null,
"HostConfig": {
"Binds": [
"/home/hlj/.cache/huggingface:/root/.cache/huggingface"
],
"ContainerIDFile": "",
"LogConfig": {
"Type": "json-file",
"Config": {
"max-file": "3",
"max-size": "10m"
}
},
"NetworkMode": "bridge",
"PortBindings": {
"23333/tcp": [
{
"HostIp": "",
"HostPort": "23333"
}
]
},
"RestartPolicy": {
"Name": "no",
"MaximumRetryCount": 0
},
"AutoRemove": false,
"VolumeDriver": "",
"VolumesFrom": null,
"ConsoleSize": [
60,
121
],
"CapAdd": null,
"CapDrop": null,
"CgroupnsMode": "private",
"Dns": [],
"DnsOptions": [],
"DnsSearch": [],
"ExtraHosts": null,
"GroupAdd": null,
"IpcMode": "host",
"Cgroup": "",
"Links": null,
"OomScoreAdj": 0,
"PidMode": "",
"Privileged": false,
"PublishAllPorts": false,
"ReadonlyRootfs": false,
"SecurityOpt": [
"label=disable"
],
"UTSMode": "",
"UsernsMode": "",
"ShmSize": 67108864,
"Runtime": "nvidia",
"Isolation": "",
"CpuShares": 0,
"Memory": 0,
"NanoCpus": 0,
"CgroupParent": "",
"BlkioWeight": 0,
"BlkioWeightDevice": [],
"BlkioDeviceReadBps": [],
"BlkioDeviceWriteBps": [],
"BlkioDeviceReadIOps": [],
"BlkioDeviceWriteIOps": [],
"CpuPeriod": 0,
"CpuQuota": 0,
"CpuRealtimePeriod": 0,
"CpuRealtimeRuntime": 0,
"CpusetCpus": "",
"CpusetMems": "",
"Devices": [],
"DeviceCgroupRules": null,
"DeviceRequests": [
{
"Driver": "",
"Count": -1,
"DeviceIDs": null,
"Capabilities": [
[
"gpu"
]
],
"Options": {}
}
],
"MemoryReservation": 0,
"MemorySwap": 0,
"MemorySwappiness": null,
"OomKillDisable": null,
"PidsLimit": null,
"Ulimits": [],
"CpuCount": 0,
"CpuPercent": 0,
"IOMaximumIOps": 0,
"IOMaximumBandwidth": 0,
"MaskedPaths": [
"/proc/asound",
"/proc/acpi",
"/proc/kcore",
"/proc/keys",
"/proc/latency_stats",
"/proc/timer_list",
"/proc/timer_stats",
"/proc/sched_debug",
"/proc/scsi",
"/sys/firmware",
"/sys/devices/virtual/powercap"
],
"ReadonlyPaths": [
"/proc/bus",
"/proc/fs",
"/proc/irq",
"/proc/sys",
"/proc/sysrq-trigger"
]
},
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/ddf24cd9ee208b8219020834967b5e5cf84f570879a9ddd7cefaa5968db598b2-init/diff:/var/lib/docker/overlay2/kd1a3js9cf8p1x3dih4oqksay/diff:/var/lib/docker/overlay2/e83a275c474b137f32aeec2d8b0835ddf5ed8ecd3671d7d83034b9ce62bd42e1/diff:/var/lib/docker/overlay2/1e389356a5fc4a57d53fbb5f806fb7ae294d0fb9cf32797b541b4756b309d70e/diff:/var/lib/docker/overlay2/da8f6d57b66412e24313af526b34b030be59fbe69d58d978bfc8910fb0a02768/diff:/var/lib/docker/overlay2/22a01998c4071857ea37a948e3aea91ffd7839f0cee89f78167b2d16bf862dbe/diff:/var/lib/docker/overlay2/0edeaba0eacef4e0ddc86dda01e4675257701cb12546b4d0ece8509313193420/diff:/var/lib/docker/overlay2/1bdd123142274c8dd7439373506bc3a13b997803ae1f91e4ca1a4f7b42f747e6/diff:/var/lib/docker/overlay2/b8add21d81efb9c7ac49e96cea14143b5c1e44fcafbc4ade08040039a54cf794/diff:/var/lib/docker/overlay2/c550471aadac0dd9cf61d894cf0c7ba4f194e44b103617610048dd57243778af/diff:/var/lib/docker/overlay2/d1353c33022ef4af2f85de516e6656201cdf13e66b32630a9e9450883181bd41/diff:/var/lib/docker/overlay2/e41238625eb790dde7e2e83c4679f7b0e473eaf8e5d3adbfd098b273bdb210b9/diff:/var/lib/docker/overlay2/2144bef9db48678df41a01bd901a7b7ddd282ace8ceb902910d3d5152a00645f/diff:/var/lib/docker/overlay2/4c2f9582f9a15ca6626af7337211304f11f3e6d23e7f0758530245a50d220078/diff:/var/lib/docker/overlay2/abc505d36333267f450108bd96c00ac5ff1e128c260e61e7997da2be301a0d51/diff:/var/lib/docker/overlay2/62681593678b2b8fda5b477cccb9c7c65ab998c72b0206af834f36fb8cc756ef/diff:/var/lib/docker/overlay2/010d7cb67f6ca5714671338cca64799957ef1e4e955a0ec2062d623a0f21ac45/diff:/var/lib/docker/overlay2/a4c223bc609c7c2b6f480c31ade268fba8a1c186ab9401e3132a38ebf4bc271c/diff:/var/lib/docker/overlay2/b563a8c0ff49d555df389db0bb2495ba402d6847491f756c7fa03589bf4569fe/diff:/var/lib/docker/overlay2/a88230089aad72f7fb7afeb1a2ab108aa78e5a88cc1207e7c3f5fe377fa62c71/diff:/var/lib/docker/overlay2/809390ce9fd3b8ea936f6262068ceeee0b337a9e46c297b22850f516c4f6fc36/diff:/var/lib/docker/overlay2/49b671d21d41637d8c448b6d30ab8a26e45fcd89ef427bb015053c2a99d872bb/diff:/var/lib/docker/overlay2/fcee4f32a58f9552a4fefc701ff02e3d0afe71b2acd013e3d8340b322bbbe778/diff:/var/lib/docker/overlay2/3f38c8a89ef97cba50090290c7805db38f1656b11665a8b60c99d020d3a5af7e/diff:/var/lib/docker/overlay2/808d9a4cb41fd6b70a13bec963e8082cb02a01657881baedff0d0ee69f44869f/diff:/var/lib/docker/overlay2/4cee062cf5bef4a43685e9e85531c20fb8b9cdfcbca79ecebf432ca442f3e499/diff:/var/lib/docker/overlay2/f8a3e6806a1464a4905f7a0aa7bcf25333e18f9ad2ddb56a9e0001bd8792f28e/diff:/var/lib/docker/overlay2/1cd44855a28cdd0506b113fd73c296a8761be0253d6fe6ca1d9db94b005b9f7b/diff:/var/lib/docker/overlay2/31d1b514bb95906f8d3106674f16472703e942bec3796162ace45fc36141304c/diff:/var/lib/docker/overlay2/9fdf9b9d162ffa05f103c66464ff92ed89e8d38ac51c7c759540747d09d79d37/diff:/var/lib/docker/overlay2/02579a706091284489d97589cca37a33e2d34839030940118eb4241921f144ce/diff",
"MergedDir": "/var/lib/docker/overlay2/ddf24cd9ee208b8219020834967b5e5cf84f570879a9ddd7cefaa5968db598b2/merged",
"UpperDir": "/var/lib/docker/overlay2/ddf24cd9ee208b8219020834967b5e5cf84f570879a9ddd7cefaa5968db598b2/diff",
"WorkDir": "/var/lib/docker/overlay2/ddf24cd9ee208b8219020834967b5e5cf84f570879a9ddd7cefaa5968db598b2/work"
},
"Name": "overlay2"
},
"Mounts": [
{
"Type": "bind",
"Source": "/home/hlj/.cache/huggingface",
"Destination": "/root/.cache/huggingface",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
}
],
"Config": {
"Hostname": "c2496d852ee3",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": true,
"AttachStderr": true,
"ExposedPorts": {
"23333/tcp": {}
},
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"HUGGING_FACE_HUB_TOKEN=<secret>",
"PATH=/opt/py38/bin:/opt/tritonserver/bin:/usr/local/mpi/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/ucx/bin",
"CUDA_VERSION=11.8.0.065",
"CUDA_DRIVER_VERSION=520.61.05",
"CUDA_CACHE_DISABLE=1",
"NVIDIA_REQUIRE_JETPACK_HOST_MOUNTS=",
"_CUDA_COMPAT_PATH=/usr/local/cuda/compat",
"ENV=/etc/shinit_v2",
"BASH_ENV=/etc/",
"SHELL=/bin/bash",
"NVIDIA_REQUIRE_CUDA=cuda>=9.0",
"NCCL_VERSION=2.15.5",
"CUBLAS_VERSION=11.11.3.6",
"CUFFT_VERSION=10.9.0.58",
"CURAND_VERSION=10.3.0.86",
"CUSPARSE_VERSION=11.7.5.86",
"CUSOLVER_VERSION=11.4.1.48",
"CUTENSOR_VERSION=1.6.1.5",
"NPP_VERSION=11.8.0.86",
"NVJPEG_VERSION=11.9.0.86",
"CUDNN_VERSION=8.7.0.84",
"TRT_VERSION=8.5.1.7",
"TRTOSS_VERSION=22.12",
"NSIGHT_SYSTEMS_VERSION=2022.4.2.1",
"NSIGHT_COMPUTE_VERSION=2022.3.0.22",
"DALI_VERSION=1.20.0",
"DALI_BUILD=6562491",
"POLYGRAPHY_VERSION=0.43.1",
"TRANSFORMER_ENGINE_VERSION=0.3",
"LD_LIBRARY_PATH=/opt/tritonserver/lib:/opt/tritonserver/backends/onnxruntime:/usr/local/cuda/compat/lib:/usr/local/nvidia/lib:/usr/local/nvidia/lib64",
"NVIDIA_VISIBLE_DEVICES=all",
"NVIDIA_DRIVER_CAPABILITIES=compute,utility,video",
"NVIDIA_PRODUCT_NAME=Triton Server",
"GDRCOPY_VERSION=2.3",
"HPCX_VERSION=2.13",
"MOFED_VERSION=5.4-rdmacore36.0",
"OPENUCX_VERSION=1.14.0",
"OPENMPI_VERSION=4.1.4",
"RDMACORE_VERSION=36.0",
"OPAL_PREFIX=/opt/hpcx/ompi",
"OMPI_MCA_coll_hcoll_enable=0",
"LIBRARY_PATH=/usr/local/cuda/lib64/stubs:",
"TRITON_SERVER_VERSION=2.29.0",
"NVIDIA_TRITON_SERVER_VERSION=22.12",
"TF_ADJUST_HUE_FUSED=1",
"TF_ADJUST_SATURATION_FUSED=1",
"TF_ENABLE_WINOGRAD_NONFUSED=1",
"TF_AUTOTUNE_THRESHOLD=2",
"TRITON_SERVER_GPU_ENABLED=1",
"TRITON_SERVER_USER=triton-server",
"DEBIAN_FRONTEND=noninteractive",
"TCMALLOC_RELEASE_RATE=200",
"DCGM_VERSION=2.2.9",
"NVIDIA_BUILD_ID=50109463",
"NCCL_LAUNCH_MODE=GROUP",
"TRITON_PTXAS_PATH=/usr/local/cuda/bin/ptxas"
],
"Cmd": null,
"Image": "lmdeploy:1.0",
"Volumes": null,
"WorkingDir": "/opt/lmdeploy",
"Entrypoint": [
"/"
],
"OnBuild": null,
"Labels": {
"-bind-to-port": "true",
"-models": "true",
"": "50109463",
"": "1a651ccb23c8f4416b5540653b207154a531194d",
"": "11.11.3.6",
"": "9.0",
"": "8.7.0.84",
"": "10.9.0.58",
"": "10.3.0.86",
"": "11.4.1.48",
"": "11.7.5.86",
"": "1.6.1.5",
"": "2.15.5",
"": "11.8.0.86",
"": "2022.3.0.22",
"": "2022.4.2.1",
"": "11.9.0.86",
"": "8.5.1.7",
"": "22.12",
"": "2.29.0",
"": "nvidia_driver"
}
},
"NetworkSettings": {
"Bridge": "",
"SandboxID": "209975bf9949fed38210ded62b87b4487f78391ab994bb7e572ba9ed2dada380",
"SandboxKey": "/var/run/docker/netns/209975bf9949",
"Ports": {
"23333/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "23333"
},
{
"HostIp": "::",
"HostPort": "23333"
}
]
},
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"EndpointID": "8e1b1258d03f72237ebaecca9ff78d8951a4b281947bef16b8bc774feca42937",
"Gateway": "172.16.0.1",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "172.16.0.5",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"MacAddress": "02:42:ac:10:00:05",
"Networks": {
"bridge": {
"IPAMConfig": null,
"Links": null,
"Aliases": null,
"MacAddress": "02:42:ac:10:00:05",
"DriverOpts": null,
"NetworkID": "b914ed43880d4258355ef85e24f301f098f06a0a4c1d17d826cbb7b4e3881fdb",
"EndpointID": "8e1b1258d03f72237ebaecca9ff78d8951a4b281947bef16b8bc774feca42937",
"Gateway": "172.16.0.1",
"IPAddress": "172.16.0.5",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"DNSNames": null
}
}
}
}
]
容器基本信息
{
"Id": "c2496d852ee3affd295a177e9f26f163a53da8d11e3708d6a479f189f707ad0b",
"Created": "2024-08-04T02:43:24.909341103Z",
"Path": "/",
"Args": [],
"State": {
"Status": "running",
"Running": true,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 1308978,
"ExitCode": 0,
"Error": "",
"StartedAt": "2024-08-14T11:31:49.644923079Z",
"FinishedAt": "2024-08-14T11:31:49.206669276Z"
},
"Image": "sha256:629ec4df10b1d0202f30c9f379dea586ead067722597cedb0f3ebb9eb3337065",
"ResolvConfPath": "/var/lib/docker/containers/c2496d852ee3affd295a177e9f26f163a53da8d11e3708d6a479f189f707ad0b/",
"HostnamePath": "/var/lib/docker/containers/c2496d852ee3affd295a177e9f26f163a53da8d11e3708d6a479f189f707ad0b/hostname",
"HostsPath": "/var/lib/docker/containers/c2496d852ee3affd295a177e9f26f163a53da8d11e3708d6a479f189f707ad0b/hosts",
"LogPath": "/var/lib/docker/containers/c2496d852ee3affd295a177e9f26f163a53da8d11e3708d6a479f189f707ad0b/",
"Name": "/lmdeploy",
"RestartCount": 0,
"Driver": "overlay2",
"Platform": "linux",
"MountLabel": "",
"ProcessLabel": "",
"AppArmorProfile": "docker-default",
"ExecIDs": null
}
- Id: 容器的唯一标识符。
- Created: 容器创建的时间。
-
Path: 容器启动时执行的命令,这里是
/
。 - Args: 启动命令的参数,这里是空数组,表示没有额外参数。
-
State: 容器的当前状态,包括是否正在运行、进程ID等。
-
Status: 容器的当前状态,这里是
running
。 - Running: 指示容器是否正在运行。
- Paused: 指示容器是否处于暂停状态。
- Restarting: 指示容器是否正在重启。
- OOMKilled: 指示容器是否因内存不足被杀死。
- Dead: 指示容器是否已死。
- Pid: 容器内的主进程的 PID。
- ExitCode: 容器的退出代码。
- Error: 容器的错误信息。
- StartedAt: 容器的启动时间。
- FinishedAt: 容器的结束时间。
-
Status: 容器的当前状态,这里是
- Image: 容器镜像的SHA256标识符。
-
ResolvConfPath: 容器内的
文件路径。
-
HostnamePath: 容器内的
hostname
文件路径。 -
HostsPath: 容器内的
hosts
文件路径。 - LogPath: 容器日志文件的路径。
-
Name: 容器的名称,这里是
/lmdeploy
。 - RestartCount: 容器的重启次数。
-
Driver: 使用的存储驱动,这里是
overlay2
。 -
Platform: 容器运行的平台,这里是
linux
。 - MountLabel: 安全标签。
- ProcessLabel: 安全进程标签。
-
AppArmorProfile: 使用的AppArmor配置,这里是
docker-default
。 -
ExecIDs: 当前在容器中执行的命令ID,这里是
null
。
主机配置
{
"HostConfig": {
"Binds": [
"/home/hlj/.cache/huggingface:/root/.cache/huggingface"
],
"ContainerIDFile": "",
"LogConfig": {
"Type": "json-file",
"Config": {
"max-file": "3",
"max-size": "10m"
}
},
"NetworkMode": "bridge",
"PortBindings": {
"23333/tcp": [
{
"HostIp": "",
"HostPort": "23333"
}
]
},
"RestartPolicy": {
"Name": "no",
"MaximumRetryCount": 0
},
"AutoRemove": false,
"VolumeDriver": "",
"VolumesFrom": null,
"ConsoleSize": [
60,
121
],
"CapAdd": null,
"CapDrop": null,
"CgroupnsMode": "private",
"Dns": [],
"DnsOptions": [],
"DnsSearch": [],
"ExtraHosts": null,
"GroupAdd": null,
"IpcMode": "host",
"Cgroup": "",
"Links": null,
"OomScoreAdj": 0,
"PidMode": "",
"Privileged": false,
"PublishAllPorts": false,
"ReadonlyRootfs": false,
"SecurityOpt": [
"label=disable"
],
"UTSMode": "",
"UsernsMode": "",
"ShmSize": 67108864,
"Runtime": "nvidia",
"Isolation": "",
"CpuShares": 0,
"Memory": 0,
"NanoCpus": 0,
"CgroupParent": "",
"BlkioWeight": 0,
"BlkioWeightDevice": [],
"BlkioDeviceReadBps": [],
"BlkioDeviceWriteBps": [],
"BlkioDeviceReadIOps": [],
"BlkioDeviceWriteIOps": [],
"CpuPeriod": 0,
"CpuQuota": 0,
"CpuRealtimePeriod": 0,
"CpuRealtimeRuntime": 0,
"CpusetCpus": "",
"CpusetMems": "",
"Devices": [],
"DeviceCgroupRules": null,
"DeviceRequests": [
{
"Driver": "",
"Count": -1,
"DeviceIDs": null,
"Capabilities": [
[
"gpu"
]
],
"Options": {}
}
],
"MemoryReservation": 0,
"MemorySwap": 0,
"MemorySwappiness": null,
"OomKillDisable": null,
"PidsLimit": null,
"Ulimits": [],
"CpuCount": 0,
"CpuPercent": 0,
"IOMaximumIOps": 0,
"IOMaximumBandwidth": 0,
"MaskedPaths": [
"/proc/asound",
"/proc/acpi",
"/proc/kcore",
"/proc/keys",
"/proc/latency_stats",
"/proc/timer_list",
"/proc/timer_stats",
"/proc/sched_debug",
"/proc/scsi",
"/sys/firmware",
"/sys/devices/virtual/powercap"
],
"ReadonlyPaths": [
"/proc/bus",
"/proc/fs",
"/proc/irq",
"/proc/sys",
"/proc/sysrq-trigger"
]
}
}
-
Binds: 挂载的卷,这里将主机的
/home/hlj/.cache/huggingface
挂载到容器的/root/.cache/huggingface
。 -
LogConfig: 日志配置,使用
json-file
日志驱动,并设置最大文件数和大小。 -
NetworkMode: 网络模式,这里是
bridge
。 -
PortBindings: 端口绑定,将主机的
23333
端口映射到容器的23333
端口。 -
RestartPolicy: 重启策略,这里是
no
,表示不自动重启。 -
IpcMode: IPC 模式,这里是
host
,表示共享主机的 IPC 命名空间。 -
Runtime: 容器运行时,这里是
nvidia
,表示使用 NVIDIA 运行时。 - DeviceRequests: 设备请求,这里请求 GPU 设备。
存储驱动信息
{
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/ddf24cd9ee208b8219020834967b5e5cf84f570879a9ddd7cefaa5968db598b2-init/diff:/var/lib/docker/overlay2/kd1a3js9cf8p1x3dih4oqksay/diff:/var/lib/docker/overlay2/e83a275c474b137f32aeec2d8b0835ddf5ed8ecd3671d7d83034b9ce62bd42e1/diff:/var/lib/docker/overlay2/1e389356a5fc4a57d53fbb5f806fb7ae294d0fb9cf32797b541b4756b309d70e/diff:/var/lib/docker/overlay2/da8f6d57b66412e24313af526b34b030be59fbe69d58d978bfc8910fb0a02768/diff:/var/lib/docker/overlay2/22a01998c4071857ea37a948e3aea91ffd7839f0cee89f78167b2d16bf862dbe/diff:/var/lib/docker/overlay2/0edeaba0eacef4e0ddc86dda01e4675257701cb12546b4d0ece8509313193420/diff:/var/lib/docker/overlay2/1bdd123142274c8dd7439373506bc3a13b997803ae1f91e4ca1a4f7b42f747e6/diff:/var/lib/docker/overlay2/b8add21d81efb9c7ac49e96cea14143b5c1e44fcafbc4ade08040039a54cf794/diff:/var/lib/docker/overlay2/c550471aadac0dd9cf61d894cf0c7ba4f194e44b103617610048dd57243778af/diff:/var/lib/docker/overlay2/d1353c33022ef4af2f85de516e6656201cdf13e66b32630a9e9450883181bd41/diff:/var/lib/docker/overlay2/e41238625eb790dde7e2e83c4679f7b0e473eaf8e5d3adbfd098b273bdb210b9/diff:/var/lib/docker/overlay2/2144bef9db48678df41a01bd901a7b7ddd282ace8ceb902910d3d5152a00645f/diff:/var/lib/docker/overlay2/4c2f9582f9a15ca6626af7337211304f11f3e6d23e7f0758530245a50d220078/diff:/var/lib/docker/overlay2/abc505d36333267f450108bd96c00ac5ff1e128c260e61e7997da2be301a0d51/diff:/var/lib/docker/overlay2/62681593678b2b8fda5b477cccb9c7c65ab998c72b0206af834f36fb8cc756ef/diff:/var/lib/docker/overlay2/010d7cb67f6ca5714671338cca64799957ef1e4e955a0ec2062d623a0f21ac45/diff:/var/lib/docker/overlay2/a4c223bc609c7c2b6f480c31ade268fba8a1c186ab9401e3132a38ebf4bc271c/diff:/var/lib/docker/overlay2/b563a8c0ff49d555df389db0bb2495ba402d6847491f756c7fa03589bf4569fe/diff:/var/lib/docker/overlay2/a88230089aad72f7fb7afeb1a2ab108aa78e5a88cc1207e7c3f5fe377fa62c71/diff:/var/lib/docker/overlay2/809390ce9fd3b8ea936f6262068ceeee0b337a9e46c297b22850f516c4f6fc36/diff:/var/lib/docker/overlay2/49b671d21d41637d8c448b6d30ab8a26e45fcd89ef427bb015053c2a99d872bb/diff:/var/lib/docker/overlay2/fcee4f32a58f9552a4fefc701ff02e3d0afe71b2acd013e3d8340b322bbbe778/diff:/var/lib/docker/overlay2/3f38c8a89ef97cba50090290c7805db38f1656b11665a8b60c99d020d3a5af7e/diff:/var/lib/docker/overlay2/808d9a4cb41fd6b70a13bec963e8082cb02a01657881baedff0d0ee69f44869f/diff:/var/lib/docker/overlay2/4cee062cf5bef4a43685e9e85531c20fb8b9cdfcbca79ecebf432ca442f3e499/diff:/var/lib/docker/overlay2/f8a3e6806a1464a4905f7a0aa7bcf25333e18f9ad2ddb56a9e0001bd8792f28e/diff:/var/lib/docker/overlay2/1cd44855a28cdd0506b113fd73c296a8761be0253d6fe6ca1d9db94b005b9f7b/diff:/var/lib/docker/overlay2/31d1b514bb95906f8d3106674f16472703e942bec3796162ace45fc36141304c/diff:/var/lib/docker/overlay2/9fdf9b9d162ffa05f103c66464ff92ed89e8d38ac51c7c759540747d09d79d37/diff:/var/lib/docker/overlay2/02579a706091284489d97589cca37a33e2d34839030940118eb4241921f144ce/diff",
"MergedDir": "/var/lib/docker/overlay2/ddf24cd9ee208b8219020834967b5e5cf84f570879a9ddd7cefaa5968db598b2/merged",
"UpperDir": "/var/lib/docker/overlay2/ddf24cd9ee208b8219020834967b5e5cf84f570879a9ddd7cefaa5968db598b2/diff",
"WorkDir": "/var/lib/docker/overlay2/ddf24cd9ee208b8219020834967b5e5cf84f570879a9ddd7cefaa5968db598b2/work"
},
"Name": "overlay2"
}
}
- LowerDir: 叠加文件系统的下层目录。
- MergedDir: 叠加文件系统的合并目录。
- UpperDir: 叠加文件系统的上层目录。
- WorkDir: 叠加文件系统的工作目录。
-
Name: 使用的存储驱动名称,这里是
overlay2
。
挂载点信息
{
"Mounts": [
{
"Type": "bind",
"Source": "/home/hlj/.cache/huggingface",
"Destination": "/root/.cache/huggingface",
"Mode": "",
"RW": true,
"Propagation": "rprivate"
}
]
}
-
Type: 挂载类型,这里是
bind
。 - Source: 主机上的源路径。
- Destination: 容器内的目标路径。
- Mode: 挂载模式。
- RW: 是否可读写。
-
Propagation: 挂载传播设置,这里是
rprivate
。
容器配置
{
"Config": {
"Hostname": "c2496d852ee3",
"Env": [
"HUGGING_FACE_HUB_TOKEN=<secret>",
"PATH=/opt/py38/bin:/opt/tritonserver/bin:/usr/local/mpi/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/ucx/bin",
"CUDA_VERSION=11.8.0.065",
"CUDA_DRIVER_VERSION=520.61.05",
"CUDA_CACHE_DISABLE=1",
"NVIDIA_REQUIRE_JETPACK_HOST_MOUNTS=",
"_CUDA_COMPAT_PATH=/usr/local/cuda/compat",
"ENV=/etc/shinit_v2",
"BASH_ENV=/etc/",
"SHELL=/bin/bash",
"NVIDIA_REQUIRE_CUDA=cuda>=9.0",
"NCCL_VERSION=2.15.5",
"CUBLAS_VERSION=11.11.3.6",
"CUFFT_VERSION=10.9.0.58",
"CURAND_VERSION=10.3.0.86",
"CUSPARSE_VERSION=11.7.5.86",
"CUSOLVER_VERSION=11.4.1.48",
"CUTENSOR_VERSION=1.6.1.5",
"NPP_VERSION=11.8.0.86",
"NVJPEG_VERSION=11.9.0.86",
"CUDNN_VERSION=8.7.0.84",
"TRT_VERSION=8.5.1.7",
"TRTOSS_VERSION=22.12",
"NSIGHT_SYSTEMS_VERSION=2022.4.2.1",
"NSIGHT_COMPUTE_VERSION=2022.3.0.22",
"DALI_VERSION=1.20.0",
"DALI_BUILD=6562491",
"POLYGRAPHY_VERSION=0.43.1",
"TRANSFORMER_ENGINE_VERSION=0.3",
"LD_LIBRARY_PATH=/opt/tritonserver/lib:/opt/tritonserver/backends/onnxruntime:/usr/local/cuda/compat/lib:/usr/local/nvidia/lib:/usr/local/nvidia/lib64",
"NVIDIA_VISIBLE_DEVICES=all",
"NVIDIA_DRIVER_CAPABILITIES=compute,utility,video",
"NVIDIA_PRODUCT_NAME=Triton Server",
"GDRCOPY_VERSION=2.3",
"HPCX_VERSION=2.13",
"MOFED_VERSION=5.4-rdmacore36.0",
"OPENUCX_VERSION=1.14.0",
"OPENMPI_VERSION=4.1.4",
"RDMACORE_VERSION=36.0",
"OPAL_PREFIX=/opt/hpcx/ompi",
"OMPI_MCA_coll_hcoll_enable=0",
"LIBRARY_PATH=/usr/local/cuda/lib64/stubs:",
"TRITON_SERVER_VERSION=2.29.0",
"NVIDIA_TRITON_SERVER_VERSION=22.12",
"TF_ADJUST_HUE_FUSED=1",
"TF_ADJUST_SATURATION_FUSED=1",
"TF_ENABLE_WINOGRAD_NONFUSED=1",
"TF_AUTOTUNE_THRESHOLD=2",
"TRITON_SERVER_GPU_ENABLED=1",
"TRITON_SERVER_USER=triton-server",
"DEBIAN_FRONTEND=noninteractive",
"TCMALLOC_RELEASE_RATE=200",
"DCGM_VERSION=2.2.9",
"NVIDIA_BUILD_ID=50109463",
"NCCL_LAUNCH_MODE=GROUP",
"TRITON_PTXAS_PATH=/usr/local/cuda/bin/ptxas"
],
"Image": "lmdeploy:1.0",
"WorkingDir": "/opt/lmdeploy",
"Entrypoint": [
"/"
],
"OnBuild": null,
"Labels": {
"-bind-to-port": "true",
"-models": "true",
"": "50109463",
"": "1a651ccb23c8f4416b5540653b207154a531194d",
"": "11.11.3.6",
"": "9.0",
"": "8.7.0.84",
"": "10.9.0.58",
"": "10.3.0.86",
"": "11.4.1.48",
"": "11.7.5.86",
"": "1.6.1.5",
"": "2.15.5",
"": "11.8.0.86",
"": "2022.3.0.22",
"": "2022.4.2.1",
"": "11.9.0.86",
"": "8.5.1.7",
"": "22.12",
"": "2.29.0",
"": "nvidia_driver"
}
}
}
- Hostname: 容器的主机名。
- Env: 容器的环境变量列表。
-
Image: 使用的镜像,这里是
lmdeploy:1.0
。 -
WorkingDir: 容器的工作目录,这里是
/opt/lmdeploy
。 -
Entrypoint: 容器启动时执行的命令,这里是
/
。 -
OnBuild: 构建时触发的指令,这里是
null
。 - Labels: 为容器设置的标签,用于元数据和管理。
网络设置
{
"NetworkSettings": {
"Bridge": "",
"SandboxID": "209975bf9949fed38210ded62b87b4487f78391ab994bb7e572ba9ed2dada380",
"SandboxKey": "/var/run/docker/netns/209975bf9949",
"Ports": {
"23333/tcp": [
{
"HostIp": "0.0.0.0",
"HostPort": "23333"
},
{
"HostIp": "::",
"HostPort": "23333"
}
]
},
"HairpinMode": false,
"LinkLocalIPv6Address": "",
"LinkLocalIPv6PrefixLen": 0,
"SecondaryIPAddresses": null,
"SecondaryIPv6Addresses": null,
"EndpointID": "8e1b1258d03f72237ebaecca9ff78d8951a4b281947bef16b8bc774feca42937",
"Gateway": "172.16.0.1",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"IPAddress": "172.16.0.5",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"MacAddress": "02:42:ac:10:00:05",
"Networks": {
"bridge": {
"IPAMConfig": null,
"Links": null,
"Aliases": null,
"MacAddress": "02:42:ac:10:00:05",
"DriverOpts": null,
"NetworkID": "b914ed43880d4258355ef85e24f301f098f06a0a4c1d17d826cbb7b4e3881fdb",
"EndpointID": "8e1b1258d03f72237ebaecca9ff78d8951a4b281947bef16b8bc774feca42937",
"Gateway": "172.16.0.1",
"IPAddress": "172.16.0.5",
"IPPrefixLen": 16,
"IPv6Gateway": "",
"GlobalIPv6Address": "",
"GlobalIPv6PrefixLen": 0,
"DNSNames": null
}
}
}
}
- Bridge: 桥接网络的名称,这里是空字符串。
- SandboxID: 容器的网络沙箱ID。
- SandboxKey: 网络沙箱的键。
-
Ports: 容器的端口映射,将主机的
23333
端口映射到容器的23333
端口。 -
HairpinMode: 是否启用发夹模式,这里是
false
。 - LinkLocalIPv6Address: 链路本地IPv6地址,这里是空字符串。
-
LinkLocalIPv6PrefixLen: 链路本地IPv6前缀长度,这里是
0
。 -
SecondaryIPAddresses: 第二个IP地址,这里是
null
。 -
SecondaryIPv6Addresses: 第二个IPv6地址,这里是
null
。 - EndpointID: 网络端点ID。
-
Gateway: 网关地址,这里是
172.16.0.1
。 - GlobalIPv6Address: 全局IPv6地址,这里是空字符串。
-
GlobalIPv6PrefixLen: 全局IPv6前缀长度,这里是
0
。 -
IPAddress: 容器的IP地址,这里是
172.16.0.5
。 -
IPPrefixLen: 容器的IP前缀长度,这里是
16
。 - IPv6Gateway: IPv6网关地址,这里是空字符串。
-
MacAddress: 容器的MAC地址,这里是
02:42:ac:10:00:05
。 -
Networks: 容器的网络配置,这里是
bridge
网络。-
IPAMConfig: IP地址管理配置,这里是
null
。 -
Links: 容器链接,这里是
null
。 -
Aliases: 网络别名,这里是
null
。 -
MacAddress: 网络的MAC地址,这里是
02:42:ac:10:00:05
。 -
DriverOpts: 网络驱动选项,这里是
null
。 -
NetworkID: 网络ID,这里是
b914ed43880d4258355ef85e24f301f098f06a0a4c1d17d826cbb7b4e3881fdb
。 -
EndpointID: 网络端点ID,这里是
8e1b1258d03f72237ebaecca9ff78d8951a4b281947bef16b8bc774feca42937
。 -
Gateway: 网关地址,这里是
172.16.0.1
。 -
IPAddress: 容器的IP地址,这里是
172.16.0.5
。 -
IPPrefixLen: 容器的IP前缀长度,这里是
16
。 - IPv6Gateway: IPv6网关地址,这里是空字符串。
- GlobalIPv6Address: 全局IPv6地址,这里是空字符串。
-
GlobalIPv6PrefixLen: 全局IPv6前缀长度,这里是
0
。 -
DNSNames: DNS名称,这里是
null
。
-
IPAMConfig: IP地址管理配置,这里是
总结
通过 docker inspect
命令的详细输出,我们可以看到容器的各种配置和状态信息,包括基本信息、主机配置、存储驱动信息、挂载点信息、容器配置和网络设置。这些信息可以帮助我们了解容器的运行环境、资源使用情况以及网络配置等。
推测的 Docker 运行命令
通过分析 docker inspect
的输出,我们可以推测出容器的运行命令:
docker run -d \
--name lmdeploy \
--runtime nvidia \
--gpus all \
-v /home/hlj/.cache/huggingface:/root/.cache/huggingface \
-p 23333:23333 \
--ipc=host \
-w /opt/lmdeploy \
--env "HUGGING_FACE_HUB_TOKEN=<secret>" \
--env "PATH=/opt/py38/bin:/opt/tritonserver/bin:/usr/local/mpi/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/ucx/bin" \
--env "CUDA_VERSION=11.8.0.065" \
--env "CUDA_DRIVER_VERSION=520.61.05" \
--env "CUDA_CACHE_DISABLE=1" \
--env "NVIDIA_REQUIRE_JETPACK_HOST_MOUNTS=" \
--env "_CUDA_COMPAT_PATH=/usr/local/cuda/compat" \
--env "ENV=/etc/shinit_v2" \
--env "BASH_ENV=/etc/" \
--env "SHELL=/bin/bash" \
--env "NVIDIA_REQUIRE_CUDA=cuda>=9.0" \
--env "NCCL_VERSION=2.15.5" \
--env "CUBLAS_VERSION=11.11.3.6" \
--env "CUFFT_VERSION=10.9.0.58" \
--env "CURAND_VERSION=10.3.0.86" \
--env "CUSPARSE_VERSION=11.7.5.86" \
--env "CUSOLVER_VERSION=11.4.1.48" \
--env "CUTENSOR_VERSION=1.6.1.5" \
--env "NPP_VERSION=11.8.0.86" \
--env "NVJPEG_VERSION=11.9.0.86" \
--env "CUDNN_VERSION=8.7.0.84" \
--env "TRT_VERSION=8.5.1.7" \
--env "TRTOSS_VERSION=22.12" \
--env "NSIGHT_SYSTEMS_VERSION=2022.4.2.1" \
--env "NSIGHT_COMPUTE_VERSION=2022.3.0.22" \
--env "DALI_VERSION=1.20.0" \
--env "DALI_BUILD=6562491" \
--env "POLYGRAPHY_VERSION=0.43.1" \
--env "TRANSFORMER_ENGINE_VERSION=0.3" \
--env "LD_LIBRARY_PATH=/opt/tritonserver/lib:/opt/tritonserver/backends/onnxruntime:/usr/local/cuda/compat/lib:/usr/local/nvidia/lib:/usr/local/nvidia/lib64" \
--env "NVIDIA_VISIBLE_DEVICES=all" \
--env "NVIDIA_DRIVER_CAPABILITIES=compute,utility,video" \
--env "NVIDIA_PRODUCT_NAME=Triton Server" \
--env "GDRCOPY_VERSION=2.3" \
--env "HPCX_VERSION=2.13" \
--env "MOFED_VERSION=5.4-rdmacore36.0" \
--env "OPENUCX_VERSION=1.14.0" \
--env "OPENMPI_VERSION=4.1.4" \
--env "RDMACORE_VERSION=36.0" \
--env "OPAL_PREFIX=/opt/hpcx/ompi" \
--env "OMPI_MCA_coll_hcoll_enable=0" \
--env "LIBRARY_PATH=/usr/local/cuda/lib64/stubs:" \
--env "TRITON_SERVER_VERSION=2.29.0" \
--env "NVIDIA_TRITON_SERVER_VERSION=22.12" \
--env "TF_ADJUST_HUE_FUSED=1" \
--env "TF_ADJUST_SATURATION_FUSED=1" \
--env "TF_ENABLE_WINOGRAD_NONFUSED=1" \
--env "TF_AUTOTUNE_THRESHOLD=2" \
--env "TRITON_SERVER_GPU_ENABLED=1" \
--env "TRITON_SERVER_USER=triton-server" \
--env "DEBIAN_FRONTEND=noninteractive" \
--env "TCMALLOC_RELEASE_RATE=200" \
--env "DCGM_VERSION=2.2.9" \
--env "NVIDIA_BUILD_ID=50109463" \
--env "NCCL_LAUNCH_MODE=GROUP" \
--env "TRITON_PTXAS_PATH=/usr/local/cuda/bin/ptxas" \
lmdeploy:1.0 /
解释
-
-d
:以后台模式运行容器。 -
--name lmdeploy
:容器名称为lmdeploy
。 -
--runtime nvidia
:指定使用 NVIDIA 运行时。 -
--gpus all
:允许容器访问所有 GPU。 -
-v /home/hlj/.cache/huggingface:/root/.cache/huggingface
:挂载主机目录到容器内。 -
-p 23333:23333
:将宿主机的23333
端口映射到容器的23333
端口。 -
--ipc=host
:使容器使用主机的 IPC 命名空间。 -
-w /opt/lmdeploy
:设置工作目录。 -
--env
:设置多个环境变量。 -
lmdeploy:1.0
:使用lmdeploy:1.0
镜像。 -
/
:执行/
脚本。
通过这些信息,我们可以准确地重现容器的启动命令。
你可以将通过 -e
参数设置的环境变量放到 脚本中。这样可以使你的 Docker 启动命令更加简洁,并且将环境变量的配置集中到一个地方,便于管理。
将环境变量移到
你可以在 脚本的顶部添加所有需要的环境变量。例如:
#!/bin/bash
# 设置环境变量
export HUGGING_FACE_HUB_TOKEN=<secret>
export PATH=/opt/py38/bin:/opt/tritonserver/bin:/usr/local/mpi/bin:/usr/local/nvidia/bin:/usr/local/cuda/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/local/ucx/bin
export CUDA_VERSION=11.8.0.065
export CUDA_DRIVER_VERSION=520.61.05
export CUDA_CACHE_DISABLE=1
export NVIDIA_REQUIRE_JETPACK_HOST_MOUNTS=
export _CUDA_COMPAT_PATH=/usr/local/cuda/compat
export ENV=/etc/shinit_v2
export BASH_ENV=/etc/
export SHELL=/bin/bash
export NVIDIA_REQUIRE_CUDA=cuda>=9.0
export NCCL_VERSION=2.15.5
export CUBLAS_VERSION=11.11.3.6
export CUFFT_VERSION=10.9.0.58
export CURAND_VERSION=10.3.0.86
export CUSPARSE_VERSION=11.7.5.86
export CUSOLVER_VERSION=11.4.1.48
export CUTENSOR_VERSION=1.6.1.5
export NPP_VERSION=11.8.0.86
export NVJPEG_VERSION=11.9.0.86
export CUDNN_VERSION=8.7.0.84
export TRT_VERSION=8.5.1.7
export TRTOSS_VERSION=22.12
export NSIGHT_SYSTEMS_VERSION=2022.4.2.1
export NSIGHT_COMPUTE_VERSION=2022.3.0.22
export DALI_VERSION=1.20.0
export DALI_BUILD=6562491
export POLYGRAPHY_VERSION=0.43.1
export TRANSFORMER_ENGINE_VERSION=0.3
export LD_LIBRARY_PATH=/opt/tritonserver/lib:/opt/tritonserver/backends/onnxruntime:/usr/local/cuda/compat/lib:/usr/local/nvidia/lib:/usr/local/nvidia/lib64
export NVIDIA_VISIBLE_DEVICES=all
export NVIDIA_DRIVER_CAPABILITIES=compute,utility,video
export NVIDIA_PRODUCT_NAME=Triton Server
export GDRCOPY_VERSION=2.3
export HPCX_VERSION=2.13
export MOFED_VERSION=5.4-rdmacore36.0
export OPENUCX_VERSION=1.14.0
export OPENMPI_VERSION=4.1.4
export RDMACORE_VERSION=36.0
export OPAL_PREFIX=/opt/hpcx/ompi
export OMPI_MCA_coll_hcoll_enable=0
export LIBRARY_PATH=/usr/local/cuda/lib64/stubs:
export TRITON_SERVER_VERSION=2.29.0
export NVIDIA_TRITON_SERVER_VERSION=22.12
export TF_ADJUST_HUE_FUSED=1
export TF_ADJUST_SATURATION_FUSED=1
export TF_ENABLE_WINOGRAD_NONFUSED=1
export TF_AUTOTUNE_THRESHOLD=2
export TRITON_SERVER_GPU_ENABLED=1
export TRITON_SERVER_USER=triton-server
export DEBIAN_FRONTEND=noninteractive
export TCMALLOC_RELEASE_RATE=200
export DCGM_VERSION=2.2.9
export NVIDIA_BUILD_ID=50109463
export NCCL_LAUNCH_MODE=GROUP
export TRITON_PTXAS_PATH=/usr/local/cuda/bin/ptxas
# 运行主程序或其他命令
# 在这里添加你的主程序启动命令,例如:
# ./my_main_program
更新 Docker 启动命令
在将环境变量移到 后,你可以简化 Docker 启动命令:
docker run -d \
--gpus all \
--name lmdeploy \
-p 23333:23333 \
--runtime=nvidia \
-v /home/hlj/.cache/huggingface:/root/.cache/huggingface \
-w /opt/lmdeploy \
lmdeploy:1.0 /
注意事项
-
权限:确保
脚本具有可执行权限。如果没有,可以使用以下命令添加可执行权限:
chmod +x /path/to/
-
保密信息:如果
HUGGING_FACE_HUB_TOKEN
或其他环境变量包含敏感信息,确保的访问权限是安全的,以防止未经授权的访问。
-
调试和验证:在修改
脚本后,建议先在本地运行并验证其功能,然后再将其用于 Docker 容器中,以确保一切按预期工作。
通过将环境变量移到 ,你可以使 Docker 启动命令更加简洁,同时也方便环境变量的管理。如果你在任何步骤遇到问题,请随时提问!