Ok, wasted a lot of time on this so here is a summary as of 19 March 2019
If you are specifically trying to use a Docker image with MySQL 8+, and then use Sequel Pro to access your database(s) running on that docker container, you are out of luck.
See the Sequel Pro issue 2699
My setup is Sequel Pro 1.1.2 using Docker desktop 2.0.3.0 (macOS Mojave), and tried using
mysql:latest (v8.0.15).
As others have reported, using MySQL 5.7 works with nothing required:
docker run -p 3306:3306 --name mysql1 -e MYSQL_ROOT_PASSWORD=secret -d mysql:5.7
Of course, it is possible to use MySQL 8+ on docker, and in that situation (if needed), other answers provided here for caching_sha2_password
type issues do work. But Sequel Pro is a NO GO with MySQL 8+
Finally, I abandoned Sequel Pro (a trusted friend from back in 2013-2014) and instead installed DBeaver. Everything worked out of the box. For docker, I used:
docker run -p 3306:3306 --name mysql1 -e MYSQL_ROOT_PASSWORD=secret -d mysql:latest --default-authentication-plugin=mysql_native_password
You can quickly peek at the MySQL databases using:
docker exec -it mysql1 bash
mysql -u root -p
show databases;