我正在尝试在Ubuntu上本地运行一个AWS Lambda项目。当我使用AWS SAM Local运行该项目时,它显示以下错误:错误:在本地运行AWS SAM项目需要安装Docker。您是否已经安装了它?
我正在尝试在Ubuntu上本地运行一个AWS Lambda项目。当我使用AWS SAM Local运行该项目时,它显示以下错误:错误:在本地运行AWS SAM项目需要安装Docker。您是否已经安装了它?
这种情况的另一个原因是Docker for Mac最近出现了这个问题。
如该问题所述,一个快速的解决方法是使用以下命令运行SAM:
$ DOCKER_HOST=unix://$HOME/.docker/run/docker.sock sam local start-api
您无需以root
身份运行SAM。
我在 Fedora 上安装 Docker 时遇到了问题。
按照 Docker 官方的后安装指南,我成功解决了这个问题。
https://docs.docker.com/install/linux/linux-postinstall/
我需要执行以下步骤:
然后我就能运行下面的命令了:
sam local start-api
如果您想运行本地 sam-cli
,您需要首先从 Docker 官网安装 Docker,然后运行sudo sam local start-api
。请注意,在运行本地开发时需要 sudo 权限。
我在Mac上使用Colima来运行Docker,使用的是Intel芯片。遇到了这个错误。通过在.zshrc文件中添加DOCKER_HOST
成功解决了问题。
vi ~/.zshrc
export DOCKER_HOST="unix://$HOME/.colima/docker.sock"
粘贴到 .zshrc 文件中
escape
:wq~/.zshenv
- Filippo Vitale这个错误通常是由于没有管理员权限来使用docker引起的。只需在命令前加上sudo即可解决。如下所示:
eg: sudo sam local start-api --region eu-west-3
我们正在使用 Mac,当使用旧版本的 Docker(1.12.6)时看到相同的消息。现已升级到较新版本17.12.0-ce-mac49,现在正常运行。
对于使用Mac和在colima上使用docker的用户,请检查以下两个事项:
确保~/.zshrc或者~/.bashrc中的DOCKER_HOST指向"unix://$HOME/.colima/docker.sock"
,例如:export DOCKER_HOST="unix://$HOME/.colima/docker.sock"
确保colima实际正在运行。执行命令:colima start
docker.sock
位于~/.docker/desktop
下。 - Carlos Hanson