**Apache Airflow version**: 1.10.4
**Environment**:
- **Cloud provider or hardware configuration**: AWS EC2
- **OS** (e.g. from /etc/os-release): ubuntu

**What happened**:
I am using `DockerOperator` in Airflow set to pull the image before executing. The pull step generates a lot of log spam:
![Screen Shot 2020-11-23 at 11 58 40 AM](https://user-images.githubusercontent.com/51468504/100010338-fab48680-2d84-11eb-8862-92e3540018b2.png)

For example the above log has 1104 lines, of which 1045 are Docker pull output.

**What you expected to happen**:
When nothing goes wrong, either of these three options:
* No output from Docker pull
* A single line saying the pull succeeded
* Several lines, one for each parent image, saying that the pull succeeded

When the pull fails, I expect a single line explaining that the pull failed and how/why.

The Docker pull output is clearly meant for an interactive shell as it is trying to display a live progress report. I see that [in my version](https://github.com/apache/airflow/blob/1.10.4/airflow/operators/docker_operator.py#L210-L212) the output is simply copied to the log. The [more recent version](https://github.com/apache/airflow/blob/8c42cf1b00c90f0d7f11b8a3a455381de8e003c5/airflow/providers/docker/operators/docker.py#L287-L291) also has similar code so I'm assuming the latest Airflow has the same problem.

**How to reproduce it**:
I think simply creating a DAG with a `DockerOperator` that has `force_pull=True` should reproduce the issue.

airflow/providers/docker/operators/docker.py
cpu_shares=int(round(self.cpus * 1024)),
                    mem_limit=self.mem_limit,
                    cap_add=self.cap_add,
                    extra_hosts=self.extra_hosts,
                ),
                image=self.image,
                user=self.user,
                working_dir=self.working_dir,
                tty=self.tty,
            )
            lines = self.cli.attach(container=self.container['Id'], stdout=True, stderr=True, stream=True)
            self.cli.start(self.container['Id'])
            line = ''
            for line in lines:
                line = line.strip()
                if hasattr(line, 'decode'):
                    
                    line = line.decode('utf-8')
                self.log.info(line)
            result = self.cli.wait(self.container['Id'])
            if result['StatusCode'] != 0:
                raise AirflowException('docker container failed: ' + repr(result))
            
            ret = None
            if self.do_xcom_push:
                ret = self.cli.logs(container=self.container['Id']) if self.xcom_all else line.encode('utf-8')
            if self.auto_remove:
                self.cli.remove_container(self.container['Id'])
            return ret
    def execute(self, context) -> Optional[str]: