Я не вижу здесь необходимости в плагине. Самый простой способ - просто создать задачу sbt, которая вызывает процесс оболочки в оболочке. Сделать это в sbt довольно просто, взгляните на этот ответ: Как выполнить скрипт bash как задачу sbt?
Примерно так:
lazy val yourDockerTask = taskKey[Unit]("Runs docker build")
yourDockerTask := {
"docker build ." !
}
Затем вы можете вызвать только что созданную задачу из оболочки sbt.