### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

I pass `AWS_REGION=eu-central-1` to the localstack container in the environment section but it is overwritten with `us-east-1`.


### Expected Behavior

`AWS_REGION` should be `eu-central-1`

### How are you starting LocalStack?

With a docker-compose file

### Steps To Reproduce

This is my localstack container in the docker compose file:

```
  mock-aws:
    image: localstack/localstack-pro:3.1
    ports:
      - "4566:4566"
    volumes:
      - type: bind
        source: ../integration-tests/aws
        target: /etc/localstack/init/ready.d
        read_only: true
      # Path to local Docker UNIX domain socket
      - "/var/run/docker.sock:/var/run/docker.sock"
    environment:
      - LS_LOG=debug
      - AWS_ACCESS_KEY_ID=test
      - AWS_SECRET_ACCESS_KEY=test
      - AWS_REGION=eu-central-1
      - LOCALSTACK_AUTH_TOKEN=${LOCALSTACK_AUTH_TOKEN:- }
      - EMAIL_SENDER_ADDRESS=noreply@host.com

```

I mount a folder which contains bash script to be run to initialize the localstack services.
Here is for example the content of `integration-tests/aws/ses.sh`:

```
#!/bin/bash

awslocal ses verify-email-identity \
  --email-address ${EMAIL_SENDER_ADDRESS} \
  --region ${AWS_REGION}

awslocal ses list-identities \
  --region ${AWS_REGION}

```

The script is executed but `AWS_REGION` seems to be overwritten and now has the value `us-east-1`.
Please note that the other variable called `EMAIL_SENDER_ADDRESS` has the proper value.

See output:
```
local-dev-mock-aws-1  | + awslocal ses verify-email-identity --email-address noreply@hosy.com --region us-east-1
local-dev-mock-aws-1  | 2024-02-13T14:17:04.827  INFO --- [   asgi_gw_1] localstack.request.aws     : AWS ses.VerifyEmailIdentity => 200
local-dev-mock-aws-1  | + awslocal ses list-identities --region us-east-1
local-dev-mock-aws-1  | 2024-02-13T14:17:06.026  INFO --- [   asgi_gw_0] localstack.request.aws     : AWS ses.ListIdentities => 200
local-dev-mock-aws-1  | 2024-02-13T14:17:06.165  INFO --- [   asgi_gw_1] localstack.request.aws     : AWS ses.ListIdentities => 200
local-dev-mock-aws-1  | {
local-dev-mock-aws-1  |     "Identities": [
local-dev-mock-aws-1  |         "noreply@host.com"
local-dev-mock-aws-1  |     ]
local-dev-mock-aws-1  | }
```

This was working with localstack version `2.1.0`

### Environment

```markdown
- OS: Ubuntu 22.04.3 LTS
- LocalStack: 3.1.0
```


### Anything else?

_No response_
"""Returns directories used for when running localstack CLI commands from the host system. Unlike
        ``for_container``, these here need to be cross-platform. Ideally, this should not be needed at all,
        because the localstack runtime and CLI do not share any control paths. There are a handful of
        situations where directories or files may be created lazily for CLI commands. Some paths are
        intentionally set to None to provoke errors if these paths are used from the CLI - which they
        shouldn't. This is a symptom of not having a clear separation between CLI/runtime code, which will
        be a future project."""
        import tempfile
        from localstack.utils import files
        tmp_dir = os.path.join(tempfile.gettempdir(), "localstack-cli")
        cache_dir = (files.get_user_cache_dir()).absolute() / "localstack-cli"
        return Directories(
            static_libs=None,
            var_libs=None,
            cache=str(cache_dir),  
            tmp=tmp_dir,
            mounted_tmp=tmp_dir,
            functions=None,
            data=os.path.join(tmp_dir, "state"),  
            logs=os.path.join(tmp_dir, "logs"),  
            config=None,  
            init=None,
        )
    def mkdirs(self):