Wazuh container security starts on the host where containers run
Wazuh sees container activity through three sources: the Wazuh agent on each Docker host or Kubernetes node, the Docker listener that reads events from the Docker engine, and Kubernetes audit logs from the API server. These sources answer different questions. The host agent shows what the node is doing, including processes, file changes, authentication events and the installed software inventory. The Docker listener reports container lifecycle events from the engine, and audit logs record which identities called the Kubernetes API and what they changed. A platform team or security lead who must answer for containers needs all three, because no single source explains a container incident from start to finish.
You need this capability when containers run workloads that handle regulated data, when someone must show who changed a deployment or reached a cluster, or when auditors ask how container hosts are monitored next to traditional servers. It also applies when you operate Kubernetes control plane components yourself, because audit policy, log retention and access to the API server logs become your responsibility. If your containers are short-lived batch jobs with no network exposure, the scope may be smaller, but the questions of who can reach the Docker socket or hold a kubeconfig with cluster-admin rights still need a documented answer.
Most of the work is configuration. Once Wazuh is chosen, the remaining decisions are which hosts and nodes receive agents and how they are grouped, which Docker events the listener forwards, whether the API server audit policy captures requests at the level your investigations need, how logs reach the Wazuh server from each cluster, and which decoders and rules apply to your log formats. Check the exact option names, supported platforms and any version limits in the Wazuh documentation for the release line you deploy. The current line is 4.14, so confirm each setting against that line before you copy examples from older guides.
Some decisions need owners before the build starts. On managed Kubernetes services, confirm with the provider which audit logs are exposed and whether you can change the audit policy at all. Decide how clusters you do not operate yourself will feed events into your Wazuh server. Agree on alert volume and retention in the Wazuh indexer, because container workloads generate many short-lived events. Then run a sandbox test: start a container, perform a known action such as a privileged run or an API change, and confirm that each source produces the expected event in the dashboard before anyone relies on it for an investigation.
Which container telemetry source fits each environment
This table compares four telemetry sources for container security in Wazuh: the Docker listener, Kubernetes audit log collection, agent-based software inventory and a dedicated runtime security tool. Read each row against your topology, whether that is standalone Docker hosts, Kubernetes clusters or both. The main takeaway is that no single source covers containers end to end, so the runtime row marks where a separate tool is still likely needed. Confirm the current scope of each source in the Wazuh documentation before you design around it.
| Telemetry source | What it observes and where it runs | What the platform team provides | When it fits |
|---|---|---|---|
| Docker listener | Container events reported by the Docker engine on each host, collected by the agent running on that host. Confirm the event types in current docs. | Agent installed on every Docker host, with the access the agent needs to the Docker engine interface. Confirm the access method and required permissions. | Standalone Docker hosts or small Docker estates where each host is managed as its own unit. |
| Kubernetes audit log collection | API server requests that record who changed workloads, secrets and access rules on the control plane. Confirm supported Kubernetes versions. | Audit policy enabled on the control plane, log export configured and a path to the Wazuh server. Confirm the current ingestion method in docs. | Clusters where you need evidence of API activity and changes to access control. |
| Agent software inventory for vulnerability detection | Installed packages on hosts and nodes, matched to vulnerability data from the CTI platform or an offline repository. Confirm whether container images are covered. | Agents on host and node operating systems, plus CTI access or an offline vulnerability repository for air-gapped networks. | Hosts running Docker or Kubernetes nodes, where vulnerabilities in the base operating system matter. |
| Dedicated runtime security tool | Process, system call and network behavior inside running containers, depending on the product chosen. Wazuh scope here should be confirmed in docs. | A separate product deployed per node or cluster, with its own sizing, licensing and alert routing. Forward its alerts to Wazuh only if the integration is documented. | Workloads where runtime behavior must be detected or blocked beyond what log and inventory sources show. |
How the Docker listener and host agents see container activity
Container activity reaches Wazuh through the same pipeline as every other endpoint signal, and the host agent is where that pipeline starts. Wazuh has four components. Agents installed on endpoints collect data and send it to the Wazuh server, which analyzes that data with decoders that parse each event into fields and rules that decide which events become alerts. The Wazuh indexer is a full-text search and analytics engine that stores those alerts, and the Wazuh dashboard is the web interface where analysts search and review them. For Docker, container events enter at the agent stage, on the Linux host that runs the Docker engine. The server and indexer have no direct view of containers, so everything they learn about container activity arrives through the agent.
The most important design fact is that the agent runs on the host, not inside each container. What Wazuh can say about containers therefore depends on what the host and its container runtime expose to the agent. The Docker listener is the component that receives runtime events on the host, and the event types it emits, the fields attached to each event and the settings that switch it on are all version-specific. Before you plan detections, confirm the exact listener configuration, the event fields and the Docker versions supported for your Wazuh release in the current Wazuh documentation. Treat those details as checked inputs to your design, and do not rely on older guides or community posts to fill the gaps.
A host-side view has predictable gaps, and your design should name them early. Short-lived containers may start and stop between the moments your configuration captures, so confirm how events are queued and delivered when an agent restarts or loses its connection to the server. Activity inside a container's own process space is not automatically visible as container events, so decide whether host-level telemetry, such as process or file monitoring, is also needed for the workloads you care about. Container names, labels and image tags are only useful for filtering if they appear in the event fields your release actually emits, which is another reason to verify fields on a test host before writing any rules.
On the server, decoders and rules determine whether a container event becomes an alert that someone sees. Default rules are written for general runtime activity and may not match your image naming, label scheme or the behaviors that matter to your risk model. Review the shipped rule set against a short list of container behaviors your organization treats as significant, for example (illustrative) starting a privileged container or mounting host paths into a container, and confirm in the current documentation which rules exist for your release. Keep custom decoders and rules in version control, because you will need to reapply and retest them during Wazuh upgrades. The indexer stores the resulting alerts, so the retention and access settings you choose there will govern how long container alerts stay searchable.
Start with a short verification run before committing to a container monitoring design. Use a non-production Linux host with the Wazuh agent installed and the Docker engine running at a version the current Wazuh documentation lists as supported. Start, stop and run commands in test containers, then trace each event from the agent to the server decoder, the matched rule and the indexed alert in the dashboard. Record which fields arrive, which events are missing and how an agent restart affects delivery. These results show what your host hardening and Kubernetes work can rely on, and they show where a dedicated runtime security tool will still be needed.
What Kubernetes audit log collection needs from your control plane
Wazuh only sees Kubernetes activity that the control plane records and exposes, so the design starts with the cluster itself. The cards below cover the decisions that determine where audit logs come from, who can read them and how the API endpoint stays available while collection runs.
Managed or self-managed control plane
The first decision is who operates the kube-apiserver. On a managed Kubernetes service, the provider controls the control plane and may limit which audit settings and log paths you can change. On a self-managed cluster, your team or a partner controls the API server flags, the audit policy file and the log storage. Ask your provider or distribution vendor which audit controls are exposed, and confirm that the logs can reach the collector you plan to use.
Audit logging and log destination
Kubernetes audit records exist only after audit logging is enabled and an audit policy decides which requests are recorded. Decide where events land, whether a local file on control plane nodes or an audit webhook backend, and how your collector reads them from that location. Each control plane node writes its own audit output, so collection must cover every node, not just one. Confirm retention and rotation settings on each node before a collector depends on them.
Client certificates and bearer tokens
Kubernetes does not store normal users as API objects. It authenticates them with X.509 client certificates, or with bearer tokens such as OpenID Connect and JWT tokens. Each method can change how audit events identify the user, so the identity fields Wazuh sees depend on the method you choose. Map which method each human user and service account uses, and check how certificate subjects or token claims appear in audit records before you write decoding rules.
Webhook token and authenticating proxy
Two further authentication paths matter when the cluster sits behind a central identity layer. Webhook token authentication sends bearer tokens to an external service for review, and an authenticating proxy passes identity in request headers from a front door service. Both move trust to a component outside the API server, so an outage or misconfiguration there can block the access that audit collection depends on. Document which path each identity takes and who owns that component.
Highly available control plane topology
Plan at least three control plane nodes behind a TCP load balancer that forwards traffic to kube-apiserver on port 6443. The kubeadm high availability guide describes two topologies: a stacked control plane, where etcd runs on the control plane nodes, and an external etcd cluster on separate hosts. Choose one before collection rules are written, because it determines which hosts produce audit output and which need a forwarder. Check load balancer health checks so that log collection does not depend on a single node.
Audit policy and log fields to confirm
Wazuh's decoders and rules expect specific audit events and fields, and those expectations can change between releases. Ask your Wazuh contact and check the current Wazuh documentation for the audit policy it recommends, the log format and the fields its decoders read. Compare that list with the audit policy on your clusters before deployment. A policy that records too little leaves rule gaps, and one that records everything adds volume to the Wazuh indexer.
What vulnerability detection covers on container hosts and what it misses
Wazuh vulnerability detection on a container host correlates the software inventory that the Wazuh agent collects from the host with vulnerability data from either the Wazuh Cyber Threat Intelligence (CTI) platform or an offline vulnerability repository. The agent reports the packages the host operating system has installed, including the container runtime and orchestration packages on each Docker or Kubernetes node. Those packages can be matched to advisories, but only if the inventory is complete and current. Before you rely on the results, confirm that an agent runs on every node, that each node appears in the dashboard with a populated package list, and that the inventory refreshes after patching.
A host inventory describes what is installed on the host, so it does not describe what runs inside your containers. Packages baked into container image layers, including base image libraries and application dependencies, need separate confirmation through image scanning in your registry or build pipeline. The same applies to packages inside running containers that were added after the image was built. Ask the team who owns image scanning, which images it covers, and whether it runs on every build and on images already stored in the registry. Record any image layer or in-container package that no scanner reviews as a named gap in your risk register.
The inventory is only one input. The feed decides which advisories can match a package at all. If your deployment uses the Wazuh CTI platform, confirm which data it draws on and how often your server receives updates. Networks without internet access can use an offline vulnerability repository instead, as described in the Wazuh offline installation guide. That repository must be built, transferred and imported by your team, so its content is only as current as your last transfer. Ask who performs each transfer, how often it happens, and how you will show the date of the data used in each assessment.
Treat the output as a scoped list, not a complete picture of container risk. Run three checks before you report results: compare the number of agent-reporting nodes with your cluster node list, select one image in production and confirm which tool scans its layers, and check that one known package version on a node appears with the expected finding. Where any check fails, fix the inventory or feed first, then document what remains uncovered. Your team will also need a runtime control for container behavior, which Wazuh vulnerability detection does not provide on its own.
How to set up container monitoring in Wazuh, step by step
This sequence takes a team from an approved Wazuh release to container and Kubernetes events in the dashboard. Each step closes with a check the operator can repeat, and the final test log proves every source works before monitoring is treated as live.
Confirm the Wazuh release and deployment method
The platform team picks the Wazuh release line and installation path before anything is built. The current line is 4.14, and the release notes list 4.14.9 as the latest patch, dated 14 October 2026, so confirm the target version is still current on the release notes page on the day you start. Then choose between all-in-one or step-by-step installation, Docker, Kubernetes, Ansible or Puppet, based on how your team already manages infrastructure. The step is done when a written record of version, method and host list is approved by the owner of the Wazuh server.
Deploy the Wazuh server, indexer and dashboard
Install the central components using the path chosen in the previous step, keeping the indexer, server and dashboard on systems your team controls. Set up dashboard access before any agent connects, and record which administrator account owns the initial configuration. Confirm the component versions match the release you approved, and confirm required ports and network paths in the current installation guide, since they depend on your topology. The check is a successful dashboard login and an agent list that is empty but ready to accept enrollments.
Install agents on Docker and Kubernetes hosts
On each Docker host and Kubernetes node in scope, install the Wazuh agent from the same release line as the server, then enroll it with the manager. Confirm the agent and server pairing is supported in the current installation and upgrade documentation before rollout. Start with one test host to prove enrollment, then extend to the remaining fleet in batches your change process allows. The check is that each host shows as active in the agent list, and that the test host has a software inventory entry visible in the dashboard. Hosts that stay pending should be checked against the network and enrollment settings in the agent documentation.
Enable and verify the Docker listener
Turn on the Docker listener on the agents running container hosts, using the setting names and file locations in the current Wazuh documentation for the release you deployed. Restart the agent only as the documentation instructs, and record the change in your configuration management system. Then start and stop a disposable test container on the test host and search the dashboard for container events from that host. The check is a container event tied to the test host and the test container name. If nothing appears, confirm the listener is enabled, the agent is running and the log path matches the documented location.
Forward Kubernetes audit logs to the dashboard
Configure the Kubernetes API server to write audit events to a log file under an audit policy your security team has approved, and make that file readable by the Wazuh agent on the control plane node. On managed Kubernetes services the provider controls this path, so confirm which audit logs can be exported and how. Then enable Wazuh collection for that log file, using the exact file path and setting names from the current documentation. Test by creating and deleting a throwaway namespace or config map, then locate both events in the dashboard. The check is that the create and delete actions appear with the acting user and resource recorded.
Configure vulnerability detection sources
Vulnerability detection correlates the software inventory agents collect with vulnerability data from the Wazuh Cyber Threat Intelligence platform or an offline repository. Choose the source based on whether the Wazuh server can reach the vendor platform. If it cannot, follow the offline installation guide to build a local repository and set a documented process for keeping it current. Confirm the update schedule and who approves it, because outdated data produces outdated findings. The check is that a known vulnerable package on the test host is matched in the dashboard, or that the feed status shows the local repository loaded.
Run test events for each source
Run one controlled test for each source you enabled: a container start and stop, a Kubernetes audit event, and a vulnerability match on a package version you know is affected. Record the event time, the source host, the rule or alert that fired and the dashboard view where it appeared, so the result can be repeated after upgrades. Compare each result with the expected event described in the documentation for that source. The check is a written test log with one passing result per source, signed off by the operator who owns the Wazuh server. Any source that fails returns to its earlier step before monitoring is treated as live.
Security and operational considerations for container monitoring
Container monitoring with Wazuh depends on the platform underneath it. These items cover how the Wazuh components are accessed, how Kubernetes audit data and Secrets are protected, and how upgrades, storage and backups keep the monitoring stack running. Use the Pod Security Standards and the CIS Kubernetes Benchmark to confirm your cluster settings. Neither document describes what Wazuh covers.
Wazuh server, indexer and dashboard access
The Wazuh server, the indexer that stores alerts and the dashboard each expose a different attack surface, so plan access for all three. Restrict network paths so that only agents, administrators and the cluster components that need them can reach each service. Decide whether dashboard users sign in through the internal user database or through SAML single sign-on. If you choose SAML, confirm the identity provider guide your team will follow, since the documentation includes guides for Okta, Microsoft Entra ID, Keycloak and others. Review who holds administrator roles in the dashboard on a recurring basis.
Least-privilege access to Kubernetes audit logs
Kubernetes audit logs record API requests and are often the richest source of container activity, but they also reveal sensitive operational detail. Limit read access to the audit log files, the shipping pipeline and the Wazuh components that parse them to named operators and service accounts. Confirm the audit policy your cluster uses so that events are captured at a level your team can act on. On each control plane node, check the log path, file ownership and permissions after every cluster upgrade.
Kubernetes Secrets stored in etcd
Kubernetes stores Secrets unencrypted in etcd by default. Anyone who can read the etcd data directory, an etcd snapshot or a backup file can read those values. Configure encryption at rest for Secrets, restrict list and watch access with least-privilege RBAC, and consider an external store through the Secrets Store CSI Driver for high-value credentials. Confirm that Wazuh agent and server configuration files and monitoring tokens do not hold credentials in plain text.
Agent upgrades on the 4.14 patch cadence
Wazuh shipped 4.14 patch releases on 17 March, 23 April, 1 July, 29 July, 23 September and 14 October 2026, according to the release notes. Plan a recurring review of those notes instead of waiting for an incident to force an upgrade. Test each agent version on a representative container host first, and confirm the server and agent version pairing in the upgrade documentation. The Wazuh server can manage agent configuration and upgrades remotely, which reduces manual work across node pools.
Log volume and retention planning
Container workloads generate high event volume, especially from audit logs, lifecycle events and short-lived pods. Estimate ingestion and storage on the indexer before rollout, using sample data from a pilot cluster. Set retention for each category of data separately, and decide which events are indexed for search and which are archived. Confirm disk headroom and index lifecycle settings against the sizing guidance for your release, then revisit those numbers after the first production cycle of logs.
etcd backups with snapshot and restore tools
Kubernetes documentation calls for a backup plan for etcd data, which holds cluster state including Secrets. Use etcdctl snapshot save to take snapshots and etcdutl to restore them. Store snapshots encrypted and outside the failure domain of the cluster they protect. Run restore tests in a non-production environment on a schedule, because an untested snapshot does not show that recovery works. Confirm that the etcd cluster runs an odd number of members, with five members recommended for production.
Where a dedicated runtime security tool still fits
Wazuh is a strong fit for collecting host and container signals, correlating them and alerting on them, but some questions about container behavior sit outside what host agents and log collection can answer on their own. Two are worth settling before you finalize the design: how much process and network activity inside individual containers you need to see at a finer grain than the host and audit logs expose, and whether you need to block a workload at deploy time rather than detect it afterward. Those two needs usually point toward a dedicated runtime security tool or an admission control layer, and they should be decided explicitly rather than assumed to be covered.
Deploy-time control is the clearest example. Kubernetes admission control is where a policy can refuse a pod that runs as root, mounts a host path or skips a required image signature. Wazuh can report on the Kubernetes audit log and flag a suspicious workload after it is created, but it does not sit in the admission path to stop the request. If your policy requires prevention, plan an admission policy engine or the built-in Pod Security Standards enforcement as a separate control. Review the Pod Security Standards levels your namespaces need and decide which team owns the policy definitions, the exceptions process and the change history.
Where a runtime tool is in the picture, the division of labor should be written down before the first deployment. A typical split is that the runtime tool owns fine-grained process, file and network policy inside containers and raises its own alerts, while Wazuh receives those alerts, correlates them with host logs, audit records and vulnerability findings, and drives case workflow. The integration is usually a forwarder or webhook that delivers alerts into the Wazuh indexer or a log path that Wazuh decodes. Confirm with each product's vendor which alert formats, fields and enforcement actions it supports, and whether either side can take an action on the other.
Treat the integration as untested until you have proven it. Build a test plan that triggers known events in a non-production cluster, such as a privileged pod, an unexpected outbound connection and a modified container file, then checks that each event appears in both systems with the fields your rules and dashboards expect. Verify that alert volume is manageable, that duplicate alerts are suppressed, and that the runtime tool keeps working when Wazuh is upgraded or restarted. Ask both vendors for their documented upgrade compatibility and support matrix before you rely on the link for production monitoring.
Limits to confirm in your environment before you rely on this
Wazuh container monitoring depends on several moving parts: the Wazuh release, the Docker and Kubernetes versions, the distribution you run, the managed control plane and the operating systems on your hosts. Each of the items below is a point where the documented behavior may differ from what your environment provides, so confirm them with a test cluster before you commit to a monitoring design.
Docker listener and version support
The Docker listener and audit log collection depend on the Docker Engine and Wazuh agent versions you run. Check the Wazuh compatibility documentation for the exact Docker versions covered by your Wazuh release line, and confirm that the listener starts and reports container events on a node running your production Docker version. Do not assume that a version used in a lab matches what your hosts run after patching.
Kubernetes audit log format and version
Audit log collection assumes the kube-apiserver writes audit events in the form Wazuh expects, to a file or backend the agent can read. Distributions that wrap, relocate or rotate these logs differently can break decoding or silently drop events. Confirm the Kubernetes version you run, where the audit policy file and log path are set, and that sample events from your distribution decode into the expected fields before you rely on alerts.
Managed control plane log access
On managed Kubernetes services, the cloud provider controls the control plane and often exposes audit logs only through its own logging service. You may not be able to place an agent on the control plane or change the audit policy in the way self-managed clusters allow. Ask the provider which audit log categories you can export, how long they are retained by default, and whether export to a Wazuh-readable destination is supported for your service tier.
Vulnerability coverage for host operating systems
Vulnerability detection correlates the software inventory that agents collect with vulnerability data from the Wazuh CTI platform or an offline repository. Coverage varies by operating system family, package manager and release. Before relying on container host findings, compare the list of host OS releases in your fleet against the platforms the vulnerability data covers, and test a known-vulnerable package to confirm that findings appear as expected.
Agent overhead on busy nodes
A Wazuh agent on a node running many containers consumes CPU, memory and disk I/O for log reading, inventory collection and file integrity checks. The impact depends on container churn, log volume, audit rule count and scan schedules, so a lightly loaded lab node says little about production. Run the agent on a representative busy node, measure resource use during peak activity and tune the collection settings before rolling out broadly.
Questions teams ask before hiring help with Wazuh container monitoring
Does the self-hosted Wazuh software cost anything to license?
No. The self-hosted Wazuh software is open source and carries no license fee, so the cost of a container monitoring project comes from the infrastructure it runs on, the engineering time to deploy and tune it, and any support you choose to buy.
Wazuh Cloud is a separate, vendor-managed service sold in Small, Medium, Large and Custom tiers, and every paid plan includes at least Standard support. Choosing between the two changes who operates the platform and what each option includes, so compare them on operating model first.
For an implementation partner, ask for a quote built from a written scope that lists clusters, Docker hosts, log retention, audit policy work and the number of alert owners. DeployOpen does not publish a price list, and a quote follows from that scope.
What makes a Wazuh container monitoring project cost more or less?
The main cost drivers are the number of Kubernetes clusters and Docker hosts in scope, the size of each cluster, the audit policy design, and whether vulnerability data comes from the online Wazuh Cyber Threat Intelligence platform or an offline repository.
More clusters and hosts mean more agents, more log sources, more storage and more alerts to triage. Designing audit policies that capture useful Kubernetes and container events without flooding the indexer takes deliberate work and several review cycles.
An offline vulnerability repository removes the dependency on outside connectivity, but your team then owns the process that keeps it current. Ask any partner to price each of these items separately so you can see which ones recur after handover.
How long does a Wazuh container monitoring setup take?
No single duration fits every environment, so treat any fixed number as a guess until the scope is written. The timeline depends on the same factors that drive cost: cluster size, the number of clusters and hosts, audit policy design, and the offline or online vulnerability feed.
Change windows also set the pace. Agent rollouts, restarts of Docker services and changes to Kubernetes API server audit settings usually need approval and a planned window, and those approvals can take longer than the technical work.
Ask for a schedule with named milestones: a pilot cluster, a tuning period, and a handover. A written scope with dates for each milestone lets you compare proposals on the same basis and track progress against them.
What does our team need to provide for a Wazuh container engagement?
Your team provides access, decisions and time. Access means a scoped account on each Kubernetes cluster that can read the configuration needed for monitoring, plus sudo or equivalent access on Docker hosts where agents install. Give the partner a test cluster or staging host before production.
Decisions include which namespaces, workloads and hosts are in scope, how long logs are retained, and which events must reach alerting. Your platform team must also approve any change to Kubernetes control plane logging, because that work runs on nodes they operate.
Finally, name owners for alerts. Someone must accept or reject each rule tuning change, triage alerts during the tuning period and decide who responds after handover. Without named owners, alert volume tends to stay high after go-live.
Can an internal security team set up Wazuh container monitoring alone?
Yes, an internal team can do it if it has working knowledge of Linux, Docker, Kubernetes control plane logging, Wazuh decoders and rule tuning. Many teams start this way with a pilot cluster and expand once the alert workflow is stable.
The hardest parts are usually the audit policy design, the configuration of Kubernetes audit logs on the control plane, writing or adjusting decoders for the events you collect, and tuning rules so that alerts are useful. These tasks need time that is often hard to find alongside existing duties.
If the internal team lacks that time or experience, a fixed-scope engagement can cover the build, documentation and handover. DeployOpen implements, documents and hands over self-hosted platforms in your own infrastructure, and ongoing support is available as a retainer.
Does Wazuh replace a dedicated container runtime security tool?
No. Wazuh is strong for collecting container and host logs, correlating installed software with vulnerability data, and running configuration checks, but it is not designed to be a runtime enforcement layer for containers.
Capabilities such as blocking suspicious process behavior inside a running container, enforcing admission policies at deployment time, or verifying image signatures need a dedicated tool. Confirm the exact capabilities you need against the current Wazuh documentation and the tool you evaluate, because the boundary can change between releases.
Many teams run both: Wazuh for centralized detection, log analytics and compliance evidence, and a runtime tool for prevention. Map each control requirement to the component that enforces it before you finalize the architecture.
How does Wazuh detect vulnerable packages on container hosts?
Wazuh agents collect a software inventory from the host, and the Wazuh server correlates that inventory with vulnerability data from the Wazuh Cyber Threat Intelligence platform or from an offline repository.
This works well for packages installed on the host operating system. Packages inside container images are a different question, because they may not appear in the host inventory in the same way. Confirm with your own test images whether the findings cover what you need, and do not assume image layers are visible without testing.
For engineers, check three things after deployment: that the inventory is complete for a sample host, that the vulnerability feed updates on the schedule you planned, and that findings map to an owner who can patch or accept the risk.
How DeployOpen scopes, delivers and supports Wazuh container monitoring
DeployOpen scopes Wazuh container monitoring as a fixed-scope engagement, starting from the Docker hosts and Kubernetes clusters you run and the events you need to see. We plan, build and document the agents, Docker listener and audit log collection inside your own cloud accounts or data centers, then hand over runbooks and support as a retainer if you want it. Scope is agreed in writing before work starts.
How we scope
- Inventory the Docker hosts, Kubernetes clusters and nodes that will report to the Wazuh server, with owners named for each.
- Record which container events, Docker listener data and Kubernetes audit logs are in scope, and which are excluded.
- Write the scope so it states whether runtime threat detection is covered or handed to a separate dedicated tool.
How we build
- Deploy Wazuh agents on hosts and configure the Docker listener to collect container events from the Docker engine.
- Set up Kubernetes audit log collection, with the audit policy and log path confirmed against your cluster distribution's documentation.
- Tune decoders and rules for container data, and test alerts with replayed events before dashboards go live.
How we hand over
- Provide configuration as code, with agent settings, listener configuration and audit policy files kept under version control.
- Document how host vulnerability detection uses the agent software inventory and your chosen vulnerability data source.
- Hand over a runbook covering agent enrollment, listener restarts, log volume checks and where alerts are reviewed.
How we support
- Support is available as a retainer covering Wazuh upgrades, agent updates and rule tuning for container sources.
- Plan Wazuh upgrades around the 4.14 patch cadence, checking release notes before each change window.
- Confirm with your team which container runtime threats need a dedicated runtime security tool, and scope that separately.

