mirror of
https://github.com/yeasy/docker_practice.git
synced 2026-08-10 08:27:25 +00:00
Add Docker Scout, remove deprecated type_name
This commit is contained in:
@@ -13,12 +13,12 @@
|
||||
例如,使用 `curl` 工具下载压缩包,并解压。
|
||||
|
||||
```bash
|
||||
$ curl -L https://github.com/etcd-io/etcd/releases/download/v3.5.29/etcd-v3.5.29-linux-amd64.tar.gz -o etcd-v3.5.29-linux-amd64.tar.gz
|
||||
$ curl -L https://github.com/etcd-io/etcd/releases/download/v3.5.21/etcd-v3.5.21-linux-amd64.tar.gz -o etcd-v3.5.21-linux-amd64.tar.gz
|
||||
|
||||
## 国内用户可选择就近的网络加速方式(以可用镜像站为准)
|
||||
|
||||
$ tar xzvf etcd-v3.5.29-linux-amd64.tar.gz
|
||||
$ cd etcd-v3.5.29-linux-amd64
|
||||
$ tar xzvf etcd-v3.5.21-linux-amd64.tar.gz
|
||||
$ cd etcd-v3.5.21-linux-amd64
|
||||
```
|
||||
解压后,可以看到文件包括
|
||||
|
||||
@@ -65,8 +65,8 @@ $ docker run \
|
||||
-p 2379:2379 \
|
||||
-p 2380:2380 \
|
||||
--mount type=bind,source=/tmp/etcd-data.tmp,destination=/etcd-data \
|
||||
--name etcd-gcr-v3.5.29 \
|
||||
quay.io/coreos/etcd:v3.5.29 \
|
||||
--name etcd-gcr-v3.5.21 \
|
||||
quay.io/coreos/etcd:v3.5.21 \
|
||||
/usr/local/bin/etcd \
|
||||
--name s1 \
|
||||
--data-dir /etcd-data \
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
services:
|
||||
|
||||
node1:
|
||||
image: quay.io/coreos/etcd:v3.5.29
|
||||
image: quay.io/coreos/etcd:v3.5.21
|
||||
volumes:
|
||||
- node1-data:/etcd-data
|
||||
expose:
|
||||
@@ -40,7 +40,7 @@ services:
|
||||
- docker-etcd
|
||||
|
||||
node2:
|
||||
image: quay.io/coreos/etcd:v3.5.29
|
||||
image: quay.io/coreos/etcd:v3.5.21
|
||||
volumes:
|
||||
- node2-data:/etcd-data
|
||||
networks:
|
||||
@@ -72,7 +72,7 @@ services:
|
||||
- docker-etcd
|
||||
|
||||
node3:
|
||||
image: quay.io/coreos/etcd:v3.5.29
|
||||
image: quay.io/coreos/etcd:v3.5.21
|
||||
volumes:
|
||||
- node3-data:/etcd-data
|
||||
networks:
|
||||
|
||||
@@ -94,16 +94,27 @@ snyk container test docker-archive://image.tar
|
||||
# 监控仓库
|
||||
snyk monitor --docker
|
||||
```
|
||||
此外,Docker 官方提供的 **Docker Scout**(`docker scout` CLI)可以直接在 Docker Desktop 或命令行中对镜像进行漏洞扫描和依赖分析,适合日常开发流程中快速检查:
|
||||
|
||||
```bash
|
||||
# 扫描本地镜像
|
||||
$ docker scout cves myapp:latest
|
||||
|
||||
# 查看镜像的依赖和漏洞摘要
|
||||
$ docker scout quickview myapp:latest
|
||||
```
|
||||
|
||||
**工具对比表:**
|
||||
|
||||
| 特性 | Trivy | Grype | Snyk |
|
||||
|------|-------|-------|------|
|
||||
| 零依赖 | ✓ | ✗ | ✗ |
|
||||
| 离线模式 | ✓ | ✓ | ✗ |
|
||||
| 许可证扫描 | ✗ | ✓ | ✓ |
|
||||
| 自动修复 | ✗ | ✗ | ✓ |
|
||||
| 开源免费 | ✓ | ✓ | 部分 |
|
||||
| IDE 集成 | ✓ | ✓ | ✓ |
|
||||
| 特性 | Docker Scout | Trivy | Grype | Snyk |
|
||||
|------|-------------|-------|-------|------|
|
||||
| Docker 集成 | ✓(原生) | 需安装 | 需安装 | 需安装 |
|
||||
| 零依赖 | ✗ | ✓ | ✗ | ✗ |
|
||||
| 离线模式 | ✗ | ✓ | ✓ | ✗ |
|
||||
| 许可证扫描 | ✓ | ✗ | ✓ | ✓ |
|
||||
| 自动修复建议 | ✓ | ✗ | ✗ | ✓ |
|
||||
| 开源免费 | 部分 | ✓ | ✓ | 部分 |
|
||||
| IDE 集成 | ✓ | ✓ | ✓ | ✓ |
|
||||
|
||||
### 18.6.2 SBOM(软件物料清单)生成与管理
|
||||
|
||||
@@ -530,6 +541,7 @@ push:
|
||||
**Q: 扫描报告中有过时的 CVE,如何处理?**
|
||||
|
||||
A: 某些 CVE 可能已经被修复但数据库未更新,可以:
|
||||
|
||||
- 手动验证安全补丁是否已应用
|
||||
- 使用工具的忽略列表功能(如 Trivy 的 `.trivyignore`)
|
||||
- 定期更新扫描工具和漏洞数据库
|
||||
@@ -537,6 +549,7 @@ A: 某些 CVE 可能已经被修复但数据库未更新,可以:
|
||||
**Q: 如何平衡镜像大小和安全性?**
|
||||
|
||||
A:
|
||||
|
||||
- 使用多阶段构建减少最终镜像大小
|
||||
- 使用精简基础镜像(Alpine、Distroless)
|
||||
- 定期更新依赖而不是一味求小
|
||||
@@ -545,6 +558,7 @@ A:
|
||||
**Q: 如何管理和轮换签名密钥?**
|
||||
|
||||
A:
|
||||
|
||||
- 在密钥管理系统(如 HashiCorp Vault)中存储密钥
|
||||
- 定期轮换密钥(建议每 90 天)
|
||||
- 使用 Keyless 签名消除密钥管理复杂性
|
||||
|
||||
@@ -94,7 +94,6 @@ networks:
|
||||
logstash_prefix docker
|
||||
logstash_dateformat %Y%m%d
|
||||
include_tag_key true
|
||||
type_name access_log
|
||||
tag_key @log_name
|
||||
flush_interval 1s
|
||||
</store>
|
||||
|
||||
Reference in New Issue
Block a user