##### SUMMARY

`docker_container` module often fails because removal of `auto_remove: yes` takes some time. I had the same problem before with shell scripts since `docker stop` returns immediately but container removal takes some time to finish. Until removal is finished, no new container with the same name can be created.

The error message is:

    Error creating container: 409 Client Error: Conflict ("Conflict. The container name "/MYCONTAINER" is already in use by container "HASH". You have to remove (or rename) that container to be able to reuse that name.")

##### ISSUE TYPE
- Bug Report

##### COMPONENT NAME
docker_container

##### ANSIBLE VERSION
```
ansible 2.9.2
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/home/USER/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/dist-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.17rc1 (default, Oct 10 2019, 10:26:01) [GCC 9.2.1 20191008]

```

##### CONFIGURATION
_no changes_

##### OS / ENVIRONMENT
Ubuntu 19.10


##### STEPS TO REPRODUCE

0. Run playbook to create container
0. Apply many changes to the file system
0. Run playbook again

```yaml
docker_container:
  name: SOMETHING
  image: SOMETHING
  state: started
  detach: yes
  recreate: yes
  autoremove: yes
```

##### EXPECTED RESULTS
Wait for removal before trying to create a new container.


##### ACTUAL RESULTS
Command fails.

```
Error creating container: 409 Client Error: Conflict ("Conflict. The container name "/MYCONTAINER" is already in use by container "HASH". You have to remove (or rename) that container to be able to reuse that name.")
```


pids_limit=dict(docker_py_version='1.10.0', docker_api_version='1.23'),
            mounts=dict(docker_py_version='2.6.0', docker_api_version='1.25'),
            cpus=dict(docker_py_version='2.3.0', docker_api_version='1.25'),
            
            ipvX_address_supported=dict(docker_py_version='1.9.0', docker_api_version='1.22',
                                        detect_usage=detect_ipvX_address_usage,
                                        usage_msg='ipv4_address or ipv6_address in networks'),
            stop_timeout=dict(),  
        )
        super(AnsibleDockerClientContainer, self).__init__(
            option_minimal_versions=option_minimal_versions,
            option_minimal_versions_ignore_params=self.__NON_CONTAINER_PROPERTY_OPTIONS,
            **kwargs
        )
        self.image_inspect_source = 'Config'
        if self.docker_api_version < LooseVersion('1.21'):
            self.image_inspect_source = 'ContainerConfig'
        self._get_additional_minimal_versions()
        self._parse_comparisons()
        if self.module.params['container_default_behavior'] is None:
            self.module.params['container_default_behavior'] = 'compatibility'
            self.module.deprecate(
                'The container_default_behavior option will change its default value from "compatibility" to '
                '"no_defaults" in Ansible 2.14. To remove this warning, please specify an explicit value for it now',
                version='2.14'
            )
        if self.module.params['container_default_behavior'] == 'compatibility':
            old_default_values = dict(
                auto_remove=False,
                detach=True,