### Is there an existing issue for this?

- [X] I have searched the existing issues and read the documentation

### Question

I'm running Localstack inside minikube on macOS. Due to the networking configuration in macOS, I need to use an HTTP proxy whenever I'm connected to a VPN.

This means that Localstack fails to start inside minikube when the host is connected to a VPN. The issue came up when Localstack tried to download https://github.com/localstack/localstack-artifacts/raw/master/local-certs/server.key.

Is there a way to tell Localstack to use an HTTP proxy when downloading resources?

### Anything else?

_No response_
"""Safe StringIO implementation that doesn't fail if str is passed in Python 2."""
    def write(self, obj):
        if six.PY2 and isinstance(obj, str):
            obj = obj.decode("unicode-escape")
        return super(SafeStringIO, self).write(obj)
def clean_cache(file_pattern=CACHE_FILE_PATTERN, last_clean_time=None, max_age=CACHE_MAX_AGE):
    if last_clean_time is None:
        last_clean_time = last_cache_clean_time
    with MUTEX_CLEAN:
        time_now = now()
        if last_clean_time["time"] > time_now - CACHE_CLEAN_TIMEOUT:
            return
        for cache_file in set(glob.glob(file_pattern)):
            mod_time = os.path.getmtime(cache_file)
            if time_now > mod_time + max_age:
                rm_rf(cache_file)
        last_clean_time["time"] = time_now
    return time_now
def truncate(data, max_length=100):
    data = str(data or "")
    return ("%s..." % data[:max_length]) if len(data) > max_length else data
def get_all_subclasses(clazz: Type):
    """Recursively get all subclasses of the given class."""
    result = set()
    subs = clazz.__subclasses__()
    for sub in subs:
        result.add(sub)
        result.update(get_all_subclasses(sub))
    return result
def parallelize(func, arr, size=None):