# 查察容器的Namespace文件 ls -l /proc/$(docker inspect -f '{{.State.Pid}}' container_id)/ns |
# Dockerfile中设置资源限定 CMD ["sh", "-c", "while true; do echo hello; sleep 1; done"] |
# 运行时限定2核CPU和1GB内存 docker run -it --cpus=2 --memory=1g myimage |
# 查察镜像分层结构 docker image history myimage |
# 多阶段构建优化镜像体积 FROM golang:1.20 AS builder WORKDIR /app COPY . . RUN go build -o myapp FROM alpine:3.18 COPY --from=builder /app/myapp /usr/bin/ CMD ["myapp"] |
# 查察docker0网桥信息 bridge link show dev docker0 |
模式 | 隔离级别 | 宿主机端口冲突 | 典型场景 |
bridge | 独立网络栈 | 支持端口映射 | 多数应用场景 |
host | 共享宿主机网络 | 无端口冲突 | 高性能网络服务 |
none | 无网络接口 | - | 纯文件系统容器 |
macvlan | 直接分配 MAC 地址 | 支持多网卡 | 传统网络适配 |
# 创建自界说网络 docker network create mynet # 运行容器并设置别名 docker run -d --network mynet --network-alias db mysql |
Application ├─ Docker CLI(用户接口) ├─ Docker Engine(守护进程) │ ├─ gRPC API(内部通信) │ ├─ containerd(镜像与运行时管理) │ │ ├─ runc(OCI运行时实现) │ │ └─ image store(镜像分层存储) │ └─ libnetwork(网络管理) └─ Linux Kernel(Namespace/Cgroups) |
// OCI运行时设置示例 { "ociVersion": "1.0.2", "process": { "terminal": true, "args": ["sh"] }, "root": { "path": "rootfs", "readonly": true } } |
驱动 | 特性 | 性能 | 企业级支持 | 推荐场景 |
overlay2 | 轻量高效 | 良好 | 内置支持 | 通用场景 |
btrfs | 快照 / 压缩 / 校验 | 中等 | 必要设置 | 数据长期化场景 |
zfs | 写时复制 / 压缩 | 卓越 | 社区支持 | 高密度镜像存储 |
# 创建基于nfs的远程数据卷 docker volume create --driver nfs \ --opt server=192.168.1.100 \ --opt share=/nfs/data \ nfs_volume |
// Seccomp设置示例 { "defaultAction": "SCMP_ACT_ERRNO", "architectures": ["SCMP_ARCH_X86_64"], "syscalls": [ { "name": "reboot", "action": "SCMP_ACT_KILL" } ] } |
欢迎光临 qidao123.com技术社区-IT企服评测·应用市场 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |