### Is there an existing issue for this?

- [X] I have searched the existing issues

### Current Behavior

I've been having issues with either Docker or Localstack, so a couple of times today I've removed all the images (and eventually reset/reinstalled Docker Desktop which deleted all the images again). I've noticed that when I run `localstack start` (installed with `pip`, on the host macOS) and the `localstack/localstack:latest` image is not present, `localstack` starts downloading a bunch of old images instead of `latest`.

```sh
bash-3.2$ docker image ls
REPOSITORY   TAG       IMAGE ID   CREATED   SIZE

bash-3.2$ localstack start
# this step will remain silent for as long as you let it
# nothing will happen for several minutes but eventually you'll see bursts of network activity
<Ctrl-C to see a KeyboardInterrupt stack trace>

bash-3.2$ docker image ls
REPOSITORY              TAG        IMAGE ID       CREATED        SIZE
localstack/localstack   0.10.1.2   9bf25773d5f0   2 years ago    855MB
localstack/localstack   0.10.0     835c5cec4d47   2 years ago    855MB
```

### Expected Behavior

The `localstack` CLI tool sees that `localstack/localstack:latest` does not exist on the local machine, and pulls that version of the image _only_

### How are you starting LocalStack?

With the `localstack` script

### Steps To Reproduce

#### How are you starting localstack (e.g., `bin/localstack` command, arguments, or `docker-compose.yml`)
```sh
docker image ls
docker image rm localstack/localstack:latest
localstack start
```

### Environment

```markdown
- OS: macOS 12.4, Docker Desktop 4.10, Python 3.9.13 (Homebrew)
- LocalStack: 
  - `localstack          1.0.0`
  - `localstack-client   1.35`
  - `localstack-ext      1.0.0`
```


### Anything else?

_No response_
runtime = lambda_function.runtime
        env_vars = inv_context.environment
        
        with self.docker_container_lock:
            env_vars["_LAMBDA_SERVER_PORT"] = str(self.next_port + self.port_offset)
            self.next_port = (self.next_port + 1) % self.max_port
        
        LOG.debug(
            'Priming docker container with runtime "%s" and arn "%s".',
            runtime,
            func_arn,
        )
        container_info = self.prime_docker_container(
            lambda_function, dict(env_vars), lambda_cwd, inv_context.docker_flags
        )
        if not inv_context.lambda_command and inv_context.handler:
            command = shlex.split(container_info.entry_point)
            command.append(inv_context.handler)
            inv_context.lambda_command = command
        lambda_docker_ip = DOCKER_CLIENT.get_container_ip(container_info.name)
        if not self._should_use_stay_open_mode(lambda_function, lambda_docker_ip, check_port=True):
            LOG.debug("Using 'docker exec' to run invocation in docker-reuse Lambda container")
            
            env_vars["DOCKER_LAMBDA_STAY_OPEN"] = None
            return DOCKER_CLIENT.exec_in_container(
                container_name_or_id=container_info.name,
                command=inv_context.lambda_command,
                interactive=True,
                env_vars=env_vars,
                stdin=stdin,