我正在做 terraform 教程并达到执行步骤terraform apply。
执行该命令后,我收到此错误:
WARNING: cgroup v2 is not fully supported yet, proceeding with partial confinement
Error: Error pinging Docker server: Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get "http://%2Fvar%2Frun%2Fdocker.sock/_ping": dial unix /var/run/docker.sock: connect: permission denied
on main.tf line 9, in provider "docker":
9: provider "docker" {
Run Code Online (Sandbox Code Playgroud)
这是我的配置main.tf文件中的内容:
terraform {
required_providers {
docker = {
source = "kreuzwerker/docker"
}
}
}
provider "docker" {
}
resource "docker_image" "nginx" {
name = "nginx:latest"
keep_locally = false
}
resource "docker_container" "nginx" {
image = docker_image.nginx.latest
name = "tutorial"
ports {
internal = 80
external = 8000
}
}
Run Code Online (Sandbox Code Playgroud)
我尝试添加host = "unix:///var/run/docker.sock"提供程序功能,但仍然收到该错误。我的电脑上也配置了 docker 和 NGINX。
有谁知道是什么原因造成的?
小智 9
确保 Docker CLI 工具安装在 /usr/local/bin 下并设置 /var/run/docker.sock ,某些第三方客户端(例如 terrafor)可以使用它与 Docker 通信
参考: https: //docs.docker.com/desktop/mac/permission-requirements/
小智 5
您可以使用以下命令找到您的 Docker Socket:
docker 上下文 ls
然后使用套接字地址相应地更新您的提供程序块
provider "docker" {
host = "unix:///home/rehman/.docker/desktop/docker.sock"
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
6743 次 |
| 最近记录: |