پرش به مطلب اصلی

اطلاعات یک کانتینر

دستور k3 container inspect برای مشاهده‌ی تمام جزئیات سطح پایین یک کانتینر استفاده می‌شود. خروجی این دستور به صورت json است و شامل اطلاعات کامل از وضعیت، پیکربندی، منابع و جزئیات اجرای کانتینر می‌باشد.


🧩 دستور کلی

{{baseURL}}/containers/{{containerId}}/json

📥 مشخصات درخواست (Request)

فیلدمقدار
MethodGET
Endpoint/containers/{{containerId}}/json
Query Parametersخیر
Content-Typeapplication/json

⚙️ پارامترها (params)


بدنه (body)


روش استفاده (How to Use)

GET {{baseURL}}/containers/{{containerId}}/json
{
"data": {
"message": "containerNotFound: No container exists with the specified name or ID prefix.",
"containerId": "cont44"
},
"meta": {
"code": "unknown",
"sourceType": "unknown",
"sourceName": "unknown",
"version": "unknown",
"shamsiDate": "14040513163845620",
"requestId": "b4151ae8-cd8b-4fa1-8cbf-ad918d8294af"
}
}
{
"meta": {
"shamsiDate": "14040513164117816",
"requestId": "09c1dddf-c9c7-485d-a21e-9451ea6a57f4"
},
"data": {
"id": "00c3e3bb4438b17a",
"created": "2025-08-04T13:03:47.568Z",
"args": "tail -f /dev/null",
"state": {
"running": true,
"paused": false,
"restartPolicy": "always",
"restartDelay": "0",
"restartWindow": 0,
"maxAttempts": 100000,
"oomKilled": false,
"failed": false,
"pid": 26717,
"exitCode": "none",
"error": ""
},
"image": "alpine:latest",
"name": "cont4",
"restartCount": 0,
"driver": "overlay",
"platform": "linux",
"hostsPath": "",
"resolvConfPath": "",
"logPath": "/var/lib/k3/containers/00c3e3bb4438b17a/logs/K3.log",
"execLogPath": "/var/lib/k3/containers/00c3e3bb4438b17a/log.jsonl",
"mountLabel": "",
"processLabel": "",
"appArmorProfile": "",
"config": {
"hostname": "umoci-default",
"domainname": "",
"user": {
"uid": 0,
"gid": 0
},
"attachStdin": false,
"attachStdout": true,
"attachStderr": true,
"tty": false,
"openStdin": false,
"stdinOnce": false,
"env": [
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"TERM=xterm",
"HOME=/root"
],
"cmd": [
"/bin/sh",
"-c",
"/bin/sh /ikigai.sh >> /mnt/K3/K3.log 2>&1;"
],
"image": "alpine:latest",
"workingDir": "/",
"labels": {},
"stopSignal": "SIGTERM",
"volumes": []
},
"hostConfig": {
"resources": {
"memory": {
"limit": 536870912,
"reservation": 556870912,
"swap": 546870912,
"disableOOMKiller": false
},
"cpu": {
"shares": 1024,
"quota": 1000000,
"period": 500000,
"cpus": ""
}
}
},
"mounts": [
{
"destination": "/proc",
"type": "proc",
"source": "proc"
},
{
"destination": "/dev",
"type": "tmpfs",
"source": "tmpfs",
"options": [
"nosuid",
"strictatime",
"mode=755",
"size=65536k"
]
},
{
"destination": "/dev/pts",
"type": "devpts",
"source": "devpts",
"options": [
"nosuid",
"noexec",
"newinstance",
"ptmxmode=0666",
"mode=0620"
]
},
{
"destination": "/dev/shm",
"type": "tmpfs",
"source": "shm",
"options": [
"nosuid",
"noexec",
"nodev",
"mode=1777",
"size=65536k"
]
},
{
"destination": "/dev/mqueue",
"type": "mqueue",
"source": "mqueue",
"options": [
"nosuid",
"noexec",
"nodev"
]
},
{
"destination": "/sys/fs/cgroup",
"type": "bind",
"source": "/sys/fs/cgroup/cont4",
"options": [
"rbind",
"nosuid",
"noexec",
"nodev",
"ro"
]
},
{
"destination": "/etc/resolv.conf",
"type": "bind",
"source": "/etc/resolv.conf",
"options": [
"rbind"
]
},
{
"destination": "/mnt/K3",
"type": "bind",
"source": "/var/lib/k3/containers/00c3e3bb4438b17a/logs",
"options": [
"rbind"
]
}
],
"networkSettings": {
"networks": [
{
"network": "kb0",
"IPv4Address": "192.168.100.2/24",
"MacAddress": "02:C3:E3:BB:44:38"
}
]
},
"capabilities": {
"bounding": [
"CAP_AUDIT_CONTROL",
"CAP_AUDIT_READ",
....
],
"effective": [

],
"inheritable": [

],
"permitted": [

],
"ambient": [

]
},
"namespaces": [
{
"type": "pid"
},
{
"type": "ipc"
},
{
"type": "uts"
},
{
"type": "mount"
},
{
"type": "user"
},
{
"type": "network"
}
],
"bundlePath": "/var/lib/k3/overlays/00c3e3bb4438b17a"
}
}

وضعیت‌ پاسخ (Status Codes)

کدمعنی
200 OKدرخواست با موفقیت انجام شد
400 Bad Requestپارامترها اشتباه هستند یا ناقص
404 Not Foundکانتینر موجود نباشد
500 Internal Server Errorخطای داخلی سرور در پردازش درخواست

نکات مهم

بخش information 🧠

فیلدتوضیح
idشناسه‌ی ۱۶ کاراکتری یکتا برای هر کانتینر.
createdزمان ساخت کانتینر (زمان استارت نیست).
pathمسیر دستور اجرایی اصلی داخل کانتینر.
argsآرگومان‌های دستور اجرایی (به صورت لیست).
imageایمیجی که کانتینر بر اساس آن ساخته شده است.
nameنام یونیک کانتینر.
restartCountتعداد دفعات ریستارت شدن کانتینر تا کنون.
driverدر سامانه‌های کانتینری مثل داکر این فیلد نوع storageDriver (مثل overlay2, aufs) که برای مدیریت فایل سیستم کانتینر استفاده می‌شود را مشخص می‌کند. (درحال توسعه)
platformنشان‌دهنده‌ی معماری سخت‌افزار (مثلاً linux/amd64 یا linux/arm64) و سیستم‌عامل کانتینر است. در k3 هنوز پشتیبانی نشده ولی معمولاً در مولتی-پلتفرم مهم است. (درحال توسعه)
hostsPathمسیر فایل /etc/hosts که برای حل نام‌ها (name resolution) در داخل کانتینر استفاده می‌شود. در k3 فعلاً ساپورت نشده ولی معمولاً برای شخصی‌سازی name resolution در کانتینر مفید است.
resolvConfPathمسیر فایل resolv.conf که برای تنظیم DNS داخل کانتینر استفاده می‌شود. فعلاً در k3 مدیریت نشده ولی در سیستم‌های مشابه نقش کلیدی برای DNS دارد.
logPathمسیر لاگ فایل‌های کانتینر.
execLogPathمسیر لاگ اجرای دستورات داخل کانتینر.
mountLabelیک label امنیتی که توسط SELinux برای کنترل دسترسی فایل‌های مونت شده به کانتینر استفاده می‌شود. در k3 پیاده‌سازی نشده ولی در سیستم‌های امن مثل ردهت مهم است.
processLabelمشابه mountLabel ولی برای کنترل دسترسی پردازه‌های داخل کانتینر با استفاده از SELinux. فعلاً در k3 کاربرد ندارد. (درحال توسعه)
appArmorProfileپروفایل امنیتی AppArmor.
bundlePathمسیر فایل سیستم کانتینر.
namespacesلیست نیم اسپیس‌های ایزوله شده کانتینر.
capabilitiesدسترسی‌های کرنلی کانتینر.
networkSettingsشامل جزئیات شبکه کانتینر مثل IP، MAC، و bridge‌های متصل شده می‌شود. در k3 هنوز فعال نیست ولی اگر فعال شود می‌تواند مدیریت دقیق شبکه‌ی کانتینر را بدهد.
mountsلیست مسیرهای مونت شده از هاست به کانتینر.
hostConfigمنابع اختصاص یافته به کانتینر (قبل از آپدیت).

بخش state 🖥️

فیلدتوضیح
statusوضعیت کانتینر: running, created, paused, stopped.
runningاگر true باشد، کانتینر در حال اجرا است.
pausedاگر true باشد، کانتینر در حالت pause است.
restartPolicyسیاست ریستارت کانتینر.
restartWindowحداکثر تعداد ریستارت مجاز در بازه‌ی زمانی.
maxAttemptsحداکثر دفعات مجاز برای ریستارت.
oomKilledدر حال توسعه. (آیا کانتینر به دلیل مصرف حافظه زیاد کشته شده؟)
failedاگر true باشد، کانتینر به خطا خورده است.
exitCodeکد خروجی کانتینر.
pidشناسه‌ی پردازه‌ی اصلی کانتینر.
errorدر حال توسعه. متن خطای کانتینر.
startedAtزمان آخرین استارت کانتینر.

بخش config 💾

فیلدتوضیح
hostnameنام هاست داخل کانتینر.
domainnameدومین نیم کانتینر.
userیوزر اجراکننده کانتینر (uid, gid).
attachStdoutاگر فعال باشد یعنی می‌توان خروجی زنده‌ی کانتینر را به کنسول وصل کرد. در k3 هنوز فعال نشده.
attachStderrمشابه attachStdout ولی برای خروجی خطاهای کانتینر. در k3 فعلاً در دسترس نیست.
ttyاگر فعال باشد یعنی یک شبیه‌ساز ترمینال (TTY) به کانتینر وصل شده. این حالت در کانتینرهایی که به صورت interactive استفاده می‌شوند (مثل bash) کاربرد دارد. در k3 هنوز استفاده نشده.
openStdinاگر true باشد، یعنی ورودی کانتینر همیشه باز می‌ماند تا داده جدید دریافت کند. فعلاً در k3 عملیاتی نیست.
stdinOnceاگر فعال باشد، کانتینر فقط یک بار ورودی دریافت می‌کند و بعد از آن قطع می‌شود. در k3 هنوز ساپورت نشده.
attachStdinاگر فعال باشد یعنی می‌توان ورودی زنده (استاندارد ورودی) به کانتینر وصل کرد. مثل وقتی که با docker exec -it وارد یک کانتینر می‌شوی. در k3 فعلاً کاربردی ندارد.
envمتغیرهای محیطی کانتینر.
cmdدستور اجرایی کانتینر.
imageایمیج مورد استفاده.
workingDirدایرکتوری کاری پیش‌فرض.
labelskey-value pairهایی هستند که می‌توان برای اضافه کردن متادیتا به کانتینر استفاده کرد. مثلاً برای مدیریت، فیلتر کردن و سازمان‌دهی کانتینرها. در k3 هنوز فعال نیست ولی معمولاً در سیستم‌های بزرگ کاربرد دارد.
stopSignalسیگنال پیش‌فرض برای توقف کانتینر.
macAddressمک آدرس کانتینر.
volumesوالیوم‌های متصل شده.

⚙️ خطاهای رایج

خطاتوضیح
containerNotFoundزمانی که کانتینر وجود نداشته باشد

🆘 دریافت راهنما