At my previous job, we ran docker containers in production and it seemed to work seamlessly for most parts. Docker is relatively new technology and experience with it is usually acquired over time.
I think the key issues we had to face was that each subsequent release of Docker came with regressions. Something that worked with 1.6 wouldn't work on 1.12.
Another issue I personally hated was the old images taking up a lot of space and there wasn't a clean way to remove old images. There was this instance where we were deploying a bunch of urgent fixes and boom, the new container won't come up - the reason, the host ran out of space. We had around 20 mins of downtime for no engineering error of ours.
That being said, one of my favorite features about docker is how you can simulate your production environment on local, making it super easier to reproduce bugs on local and not run into environment mismatch issues. Sure, there are pitfalls with docker, but I think things will only improve over time.