Files
docker_practice/security/README.md
2026-01-11 10:05:49 -08:00

60 lines
1.4 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 安全
容器安全是生产环境部署的核心考量评估 Docker 的安全性时主要考虑以下几个方面
## 核心安全机制
* **内核命名空间Namespace**提供进程网络文件系统等资源的隔离
* **控制组Cgroups**限制容器的 CPU内存I/O 等资源使用
* **Docker 守护进程安全**服务端的访问控制和防护
* **内核能力机制Capabilities**细粒度的权限控制
## 现代安全实践
### 镜像安全扫描
使用工具扫描镜像中的已知漏洞
* **Docker Scout**Docker 官方集成的安全扫描工具提供 SBOM 分析
* **Trivy**开源的全面漏洞扫描器
* **Snyk**商业级安全平台
```bash
# 使用 Docker Scout 扫描镜像
$ docker scout cves myimage:latest
# 使用 Trivy 扫描
$ trivy image myimage:latest
```
### root 用户运行
避免以 root 用户运行容器降低权限逃逸风险
```dockerfile
FROM node:20-alpine
RUN addgroup -g 1001 appgroup && adduser -u 1001 -G appgroup -D appuser
USER appuser
```
### 只读文件系统
使用只读根文件系统增强安全性
```bash
$ docker run --read-only --tmpfs /tmp myimage
```
### Docker Content TrustDCT
启用镜像签名验证确保镜像来源可信
```bash
$ export DOCKER_CONTENT_TRUST=1
$ docker pull myregistry/myimage:latest
```
## 本章内容
本章将详细介绍各安全机制的原理和配置方法