仅在其中一个容器上使用
docker-compose up
时,我收到此错误。
exec: "com.docker.cli": executable file not found in $PATH
The terminal process "/bin/zsh '-c', 'docker logs -f f6557b5dd19d9b2bc5a63a840464bc2b879d375fe72bc037d82a5358d4913119'" failed to launch (exit code: 1).
docker-compose build
从头开始
FROM tiangolo/uvicorn-gunicorn:python3.8
COPY requirements.txt /app/
RUN pip install -r requirements.txt
COPY ./app /app/app
#COPY config.py /app/app/
docker-compose.yml
version: "3"
services:
postgresql:
container_name: postgresql
image: postgres:12
ports:
- "5433:5432"
environment:
- POSTGRES_USER=${POSTGRES_USER}
- POSTGRES_PASSWORD=${POSTGRES_PASSWORD}
- POSTGRES_DB=${POSTGRES_DB}
volumes:
- ./postgres-data:/var/lib/postgresql/data
fastapi:
build:
context: ./fastapi/
dockerfile: Dockerfile
volumes:
- ./fastapi/app/imgs:/app/app/imgs
ports:
- "1001:80"
depends_on:
- postgresql
env_file:
- .env
pgadmin:
container_name: pgadmin
image: dpage/pgadmin4
environment:
- [email protected]
- PGADMIN_DEFAULT_PASSWORD=admin
ports:
- "5050:80"
depends_on:
- postgresql
solr:
build:
context: ./solr/
dockerfile: Dockerfile
restart: always
ports:
- "8983:8983"
volumes:
- data:/var/solr
volumes:
data:
更新: 当我降级到 docker 桌面 2.3.0.4 时它起作用了
更新答案:
自VSCode Docker 1.14.0 起,您现在可以在设置中设置 Docker 可执行路径,这在大多数情况下应该会有所帮助。
旧答案(选项已从 Docker Desktop 中删除):
在我停用该功能后,Desktop Docker 版本 2.4.0.0 就可以使用了Enable cloud experience
。您可以在
Preferences
-->
Command Line
下找到它。
确保 Docker 确实正在运行,请在此处查看其他可能的解决方案。
开始Docker
exec: "com.docker.cli": executable file not found in $PATH
我使用
https://docs.docker.com/cloud/ecs-integration/#install-the-docker-compose-cli-on-linux 中的说明恢复了 compose CLI 并运行(以 root 身份):
curl -L https://raw.githubusercontent.com/docker/compose-cli/main/scripts/install/install_linux.sh | sh
这为我解决了问题。注意:我不建议安装 docker-compose cli 来解决此问题,而是分享一些见解,以防这也适用于您。
sudo apt install docker.io
exec:“com.docker.cli”:在当前 $PATH 中找不到可执行文件 路径:XXXXXX您可能需要
单独安装docker引擎,至少在我的情况下是这样(使用Arch linux)。谢谢!
如果在新版本上仍然出现此问题,则需要降级到 Docker v3.1.0,禁用云体验功能,然后升级到最新版本。
dostarr@DOSTARR-M-38LF ~ % docker run busybox
exec: "com.docker.cli": executable file not found in $PATH
<started docker>
dostarr@DOSTARR-M-38LF ~ % docker run busybox
dostarr@DOSTARR-M-38LF ~ %
minikube tunnel
时遇到了同样的问题,并且由于我不想重新安装任何东西,所以我最终从 docker bin 路径运行它(在 Windows 上它位于 'C:\Program Files\Docker \码头工人 资源')并且它有效。
colima,它是 macOS(和 Linux)上的容器运行时,只需最少的设置。
# Homebrew
brew install colima docker
colima start
现在,您可以像以前一样使用 docker 命令了。对于 docker compose 命令,您必须安装:
brew install docker-compose
即使我的二进制文件位于已经在路径中的
/usr/bin
内,它仍然无法工作。运行
/usr/bin/docker
确实有效。结果我必须将
$PATH
添加到
/usr/bin/docker
本身。我通过添加到
~/.bashrc
来做到这一点:
export PATH=$PATH:/usr/bin/docker