### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

- following the [installation steps](https://docs.localstack.cloud/getting-started/installation/) fails when validating localstack configuration

- error
![image](https://github.com/localstack/localstack/assets/10324554/d82ef62e-c8b8-402e-8195-e691733cfeb1)

- localstack is indeed running
![image](https://github.com/localstack/localstack/assets/10324554/44d7180a-5090-416d-afa9-c4eaaedca33e)


### Expected Behavior

- localstack can consume the path I pass `--file`

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)

    docker compose up -d
    localstack config validate --file ./compose.yaml


### Environment

```markdown
OS: Ubuntu 20.04
    LocalStack: latest
```


### Anything else?

- you can reproduce [on this branch](https://github.com/noahehall/localstack/tree/rds) if it still exists
  - else switch to the develop branch
"""Determine and set log level. The singleton factory makes sure the logging is only set up once."""
    from localstack.logging.setup import setup_logging_from_config
    setup_logging_from_config()
def resolve_apis(services: Iterable[str]) -> Set[str]:
    """
    Resolves recursively for the given collection of services (e.g., ["serverless", "cognito"]) the list of actual
    API services that need to be included (e.g., {'dynamodb', 'cloudformation', 'logs', 'kinesis', 'sts',
    'cognito-identity', 's3', 'dynamodbstreams', 'apigateway', 'cloudwatch', 'lambda', 'cognito-idp', 'iam'}).
    More specifically, it does this by:
    (1) resolving and adding dependencies (e.g., "dynamodbstreams" requires "kinesis"),
    (2) resolving and adding composites (e.g., "serverless" describes an ensemble
            including "iam", "lambda", "dynamodb", "apigateway", "s3", "sns", and "logs"), and
    (3) removing duplicates from the list.
    :param services: a collection of services that can include composites (e.g., "serverless").
    :returns a set of canonical service names
    """
    stack = []
    result = set()
    
    stack.extend(services)
    while stack:
        service = stack.pop()
        if service in result:
            continue
        
        if service in API_COMPOSITES:
            stack.extend(API_COMPOSITES[service])
            continue
        result.add(service)