<!-- Love localstack? Please consider supporting our collective:
👉  https://opencollective.com/localstack/donate -->

Having upgraded to the latest LocalStack version, I've noticed that Docker containers from Lambda executions are immediately removed when they terminate.

This was added in https://github.com/localstack/localstack/pull/1584

I can appreciate the need to clean up containers, however this feature of having them stay up is actually very useful for debugging things when they go wrong!

Would it be possible to have a flag so that when running LocalStack we can specify whether to remove containers on completion? Something like:

```
services:
  localstack:
    image: localstack/localstack:latest
    ports:
      - "4567-4593:4567-4593"
    environment:
      - SERVICES=serverless,ssm,stepfunctions
      - DOCKER_HOST=unix:///var/run/docker.sock
      - LAMBDA_EXECUTOR=docker
      - REMOVE_CONTAINERS_ON_LAMBDA_TERMINATE=true #(or false)
    volumes:
      - "${TMPDIR:-/tmp/localstack}:/tmp/localstack"
      - "/var/run/docker.sock:/var/run/docker.sock"
```

Thanks for the great work folks!
"""Tests for the existence of the specified bucket. Returns the error code
    if the bucket does not exist (200 if the bucket does exist).
    """
    bucket_name = normalize_bucket_name(bucket_name)
    s3_client = aws_stack.connect_to_service('s3')
    try:
        s3_client.head_bucket(Bucket=bucket_name)
    except ClientError as err:
        error_code = err.response.get('Error').get('Code')
        return False, error_code
    return True, 200
def check_content_md5(data, headers):
    actual = md5(strip_chunk_signatures(data))
    expected = headers['Content-MD5']
    try:
        expected = to_str(codecs.encode(base64.b64decode(expected), 'hex'))
    except Exception:
        expected = '__invalid__'
    if actual != expected:
        return error_response('The Content-MD5 you specified was invalid', 'InvalidDigest', status_code=400)
def error_response(message, code, status_code=400):