使用 Spring Boot Gradle 插件和 Colima 构建 Docker 映像

ric*_*din 5 gradle docker spring-boot docker-daemon colima

我正在尝试使用 Gradle 插件创建 Spring Boot 应用程序的 docker 映像。我正在使用 Spring Boot 2.6.4 和 Gradle 7.1.1。

我使用的是 Mac,并且没有安装 Docker Desktop。事实上,我使用 Colima 运行 docker。

问题是我无法使用以下命令构建 docker 映像,./gradlew bootBuildImage因为 Gradle 找不到 docker 守护进程:

Connection to the Docker daemon at 'localhost' failed with error "[2] No such file or directory"; ensure the Docker daemon is running and accessible
Run Code Online (Sandbox Code Playgroud)

我需要在 Colima 或我的build.gradle文件中进行任何配置吗?

Sco*_*ick 6

~/.colima/docker.sockColima默认在该位置创建一个套接字。运行该命令docker context ls应显示一个以列colima中显示的套接字位置命名的上下文DOCKER ENDPOINT

DOCKER_HOST您可以通过将环境变量设置为unix:///Users/<user>/.colima/docker.sock或将以下内容添加到构建文件中来配置 Spring Boot Gradle 插件以使用此套接字,如文档中所示。

tasks.named("bootBuildImage") {
  docker {
    host = "unix:///Users/<user>/.colima/docker.sock"
  }
}
Run Code Online (Sandbox Code Playgroud)