R-019-001 Software validation report_Docker_2024
Scope
The aim is to gather additional requirements and configuration specifications not encompassed within the application, together with their respective validations. This ensures adherence to both our internal requirements and those imposed by regulatory bodies. This involves detailing specifications and criteria which are external to the application but fundamental for ensuring our outputs align with all requisite standards and regulations.
Software description
Name
Docker
Manufacturer
Docker Inc.
While Docker Desktop and Docker Hub continue under Docker Inc., there is a new product line called "Enterprise" that is now managed by now Mirantis.
Intended use
Docker is a set of platform-as-a-service (PaaS) products that use OS-level virtualization to deliver software in packages called containers. Containers are isolated from one another and bundle their own software, libraries, and configuration files; they can communicate with each other through well-defined channels. Docker is intended for the development, shipment, and running of the microservices of the medical device.
Testing details
Software version
24.0.7
Evaluation date
2024-04-12
Risk-based analysis
- Security risks: Containers might share the same kernel, which can lead to security vulnerabilities if not properly managed. We must ensure that containers are only given necessary permissions and that container images are obtained from trusted sources.
- Dependency risks: Docker containers depend on Docker Engine and underlying host operating systems, which means that vulnerabilities in these components could potentially affect the containers.
- Operational risks: Misconfiguration can lead to operational issues, such as containers consuming excessive resources, leading to system instability.
Requirements and design specification
- Requirement 01: Secure configuration of Docker Engine and containers to prevent unauthorized access.
- Requirement 02: Regular updates of Docker Engine and container images to mitigate security vulnerabilities.
- Requirement 03: Efficient resource management to prevent denial-of-service to applications running within containers.
- Requirement 04: Docker containers must be able to access the host GPU to leverage hardware acceleration for computer vision tasks.
- Requirement 05: Ensure compatibility of Docker containers with GPU drivers and libraries (e.g., CUDA) necessary for running computer vision models.
- Requirement 06: Measure and optimize the performance of GPU-accelerated containers to ensure they meet the expected computational benchmarks for computer vision tasks.
Assurance activities and test plan
In this section we outline the systematic approach to verify and validate that Docker meets all specified requirements for safe and effective operation. It details the tests designed to assess Docker's functionality, security, and performance, including its ability to leverage GPU acceleration for computational tasks. This plan ensures Docker's reliability and efficacy in supporting our software device's needs.
| ID | Test description | Acceptance criteria | Requirement tested |
|---|---|---|---|
| Test 01 | Verify Docker Engine's secure configuration settings | Docker Engine and containers are configured following best security practices | Requirement 01 |
| Test 02 | Check for updates of Docker Engine and container images | Docker Engine and all container images are up-to-date with the latest security patches | Requirement 02 |
| Test 03 | Assess Docker's resource management capabilities | Docker containers do not exceed allocated resources and the system remains stable under load | Requirement 03 |
| Test 04 | Verify Docker containers can detect, access and utilize the host GPU properly | Docker containers can access the host GPU and are fully compatible with necessary GPU drivers and libraries, such as CUDA or cuDNN, ensuring optimal performance for running computer vision models | Requirements 04 and 05 |
| Test 05 | Benchmark the performance of GPU-accelerated containers | GPU-accelerated Docker containers meet or exceed the expected performance benchmarks for running computer vision models | Requirement 06 |