2.1 安全建议

  • Docker 容器默认没有任何资源限制。这为每个容器提供了主机内核所提供的所有 CPU 和内存资源的访问权限。您还必须通过设置容器可使用的资源量限制,确保一个正在运行的容器不会使用更多资源,致使其他正在运行的容器停止。

    • Docker 容器应在 Docker run 命令中使用 --memory 标志确保容器使用的内存应用了硬限制。

    • Docker 容器应在 Docker run 命令中使用 --cpuset-cpus 标志确保运行的容器所使用的 CPU 量应用了限制。

  • --pids-limit 应设置为 300 以限制任何指定时间容器内生成的内核线程的数量。这样是为了防止 DoS 攻击。

  • 您必须在 Docker run 命令中使用 --restart 标志将故障容器重启动策略设置为 5。

  • 容器出现后,您只能在运行状态显示为 Healthy(健康)后使用容器。要检查容器的运行状态,运行以下命令:

    docker ps <container_name/ID>
  • Docker 容器将始终以非 root user (nds) 启动。作为额外的安全措施,启用守护程序用户名称空间重新映射,以防止容器内部发生特权降级攻击。有关用户名称空间重新映射的更多信息,请参见 Isolate containers with a user namespace(用用户名称空间隔离容器)。