Fehler beim Installieren oder Aktualisieren von Checkov mit pip. Fehler: beim Installieren der Visual Studio Code Checkov-Erweiterung in Microsoft Windows.
17456
Created On 04/19/22 18:48 PM - Last Modified 07/14/25 23:07 PM
Objective
Die folgenden Fehler können bei der Installation der Visual Studio Code Checkov-Erweiterung in Microsoft Windows auftreten.
-Failed to install or update Checkov using pip3
-Failed to install or update Checkov using pip
-Command failed: python3 --version\n'python3' is not recognized as an internal or external command
-Error: Command failed: python --version\n'python' is not recognized as an internal or external command
Beispiel Fehlerausgabe:
Checkov logs
[info]: Starting Checkov Extension. {"extensionVersion":"1.0.72","vscodeVersion":"1.65.2"}
[info]: Trying to install Checkov using Docker.
[debug]: Testing docker installation with command: docker pull bridgecrew/checkov:latest
[error]: Failed to install or update Checkov using Docker. Error: {"error":{"killed":false,"code":1,"signal":null,
"cmd":"docker pull bridgecrew/checkov:latest","message":"Command failed: docker pull bridgecrew/checkov:latest\n'docker' is not recognized as an internal or
external command,\r\noperable program or batch file.\r\n","stack":
"Error: Command failed: docker pull bridgecrew/checkov:latest\n'docker' is not recognized as an internal or external command,\r\noperable program or
batch file.\r\n\n\tat ChildProcess.exithandler
(child_process.js:317:12)\n\tat ChildProcess.emit (events.js:315:20)\n\tat maybeClose (internal/child_process.js:1048:16)\n\tat Socket.<anonymous>
(internal/child_process.js:439:11)\n\tat Socket.emit (events.js:315:20)\n\tat
Pipe.<anonymous> (net.js:673:12)"}}
[info]: Trying to install Checkov using pip3.
[debug]: Getting python version with command: python3 --version
[error]: Failed to install or update Checkov using pip3. Error: {"error":
{"killed":false,"code":1,"signal":null,"cmd":"python3 --
version","message":"Command failed: python3 --version\n'python3' is not recognized
as an internal or external command,\r\noperable program or batch
file.\r\n","stack":"Error: Command failed: python3 --version\n'python3' is not
recognized as an internal or external command,\r\noperable program or batch
file.\r\n\n\tat ChildProcess.exithandler (child_process.js:317:12)\n\tat
ChildProcess.emit (events.js:315:20)\n\tat maybeClose
(internal/child_process.js:1048:16)\n\tat Socket.<anonymous>
(internal/child_process.js:439:11)\n\tat Socket.emit (events.js:315:20)\n\tat
Pipe.<anonymous> (net.js:673:12)"}}
[info]: Retrying using `python` and `pip`
[debug]: Getting python version with command: python --version
[error]: Failed to install or update Checkov using pip. Error: {"error":
{"killed":false,"code":1,"signal":null,"cmd":"python --version","message":"Command
failed: python --version\n'python' is not recognized as an internal or external
command,\r\noperable program or batch file.\r\n","stack":"Error: Command failed:
python --version\n'python' is not recognized as an internal or external
command,\r\noperable program or batch file.\r\n\n\tat ChildProcess.exithandler
(child_process.js:317:12)\n\tat ChildProcess.emit (events.js:315:20)\n\tat
maybeClose (internal/child_process.js:1048:16)\n\tat Socket.<anonymous>
(internal/child_process.js:439:11)\n\tat Socket.emit (events.js:315:20)\n\tat
Pipe.<anonymous> (net.js:673:12)"}}
[info]: Trying to install Checkov using pipenv.
[debug]: Installation dir: c:\Users\USERNAME\AppData\Roaming\Code\User\globalStorage\bridgecrew.checkov\check
ov-installation
[debug]: Getting python version with command: pipenv run python --version
[error]: Failed to install or update Checkov using pipenv. Error: {"error":{"killed":false,"code":1,"signal":null,"cmd":"pipenv run python --
version","message":"Command failed: pipenv run python --version\n'pipenv' is not
recognized as an internal or external command,\r\noperable program or batch
file.\r\n","stack":"Error: Command failed: pipenv run python --version\n'pipenv'
is not recognized as an internal or external command,\r\noperable program or batch
file.\r\n\n\tat ChildProcess.exithandler (child_process.js:317:12)\n\tat
ChildProcess.emit (events.js:315:20)\n\tat maybeClose
(internal/child_process.js:1048:16)\n\tat Socket.<anonymous>
(internal/child_process.js:439:11)\n\tat Socket.emit (events.js:315:20)\n\tat
Pipe.<anonymous> (net.js:673:12)"}}
[warn]: All installation / update methods failed; attempting to fall back to a
global checkov installation
[error]: Could not find a global `checkov` executable either
[error]: Error occurred while preparing Checkov. Verify your settings, or try to
reload vscode. {"error":{"message":"Could not install Checkov.","stack":"Error:
Could not install Checkov.\n\tat
c:\\Users\\USERNAME\\.vscode\\extensions\\bridgecrew.checkov-
1.0.72\\out\\checkovInstaller.js:165:11\n\tat Generator.next (<anonymous>)\n\tat
fulfilled (c:\\Users\\USERNAME\\.vscode\\extensions\\bridgecrew.checkov-
1.0.72\\out\\checkovInstaller.js:24:58)"}}
Environment
- Prisma Cloud
- Code-Sicherheit / Bridgecrew
- Microsoft Windows
- Visual Studio Code Checkov-Erweiterung
Procedure
Aus den Python-Dokumenten hier - Das MSI Installationsprogramm ist der empfohlene Pfad für die Windows-Installation.
https://www.python.org/downloads/release/python-3102/
Python ist global installiert
Innerhalb von Windows sind Umgebungsvariablenpfade festgelegt für – Umgebung auf Benutzerebene
Umgebung auf Systemebene
Auch über PowerShell –
Dieses Problem tritt bei Powershell auf, der Standardshell im Windows-Code VS .
Die Python3.10-Installation MSI wird standardmäßig im Pfad in den Variablen (AppData\Local\Programs\Python) installiert. Es scheint, als ob Powershell den Umgebungssatz nicht lädt, es sei denn, nicht nur env wird gesetzt, sondern auch der Dateipfad wird der PATH env-Variablen hinzugefügt.
Sobald Sie Python-Variablen korrekt auflösen konnten, würde Checkov immer noch nicht initialisiert, es sei denn, Sie verwenden pip.
Benutzervariable PATH-
Das bedeutete, dass die Dokumentation hier befolgt werden musste - https://pip.pypa.io/en/stable/installation/ und eine zusätzliche Umgebung für pip.
Systemvariable PATH (benötigt für pip)
Sobald all das erledigt ist, kehrt checkov endlich in einen funktionierenden Zustand zurück