private void exposePorts() {
        addExposedPorts(MGMT_PORT, MGMT_SSL_PORT);

        if (enabledServices.contains(CouchbaseService.KV)) {
            addExposedPorts(KV_PORT, KV_SSL_PORT);
            addExposedPorts(VIEW_PORT, VIEW_SSL_PORT);
        }
        if (enabledServices.contains(CouchbaseService.ANALYTICS)) {
            addExposedPorts(ANALYTICS_PORT, ANALYTICS_SSL_PORT);
        }
        if (enabledServices.contains(CouchbaseService.QUERY)) {
            addExposedPorts(QUERY_PORT, QUERY_SSL_PORT);
        }
        if (enabledServices.contains(CouchbaseService.SEARCH)) {
            addExposedPorts(SEARCH_PORT, SEARCH_SSL_PORT);
        }
        if (enabledServices.contains(CouchbaseService.EVENTING)) {
            addExposedPorts(EVENTING_PORT, EVENTING_SSL_PORT);
        }
    }
Configures the exposed ports based on the enabled services.
<p>
Note that the MGMT_PORTs are always enabled since there must always be a cluster
manager. Also, the View engine ports are implicitly available on the same nodes
where the KV service is enabled - it is not possible to configure them individually.
modules/couchbase/src/main/java/org/testcontainers/couchbase/CouchbaseContainer.java