RhinoSecurityLabs / cloudgoat

CloudGoat is Rhino Security Labs' "Vulnerable by Design" AWS deployment tool
BSD 3-Clause "New" or "Revised" License
2.88k stars 597 forks source link

Recommend Python Virtual Environment & Update Modules #255

Closed andrew-aiken closed 2 months ago

andrew-aiken commented 5 months ago

Overview of Changes

Testing

Locally running scenarios (including ecs_takeover)

Rational

Without setting up virtual environments the following error is raised.

❯ pip3 install -r ./requirements.txt
error: externally-managed-environment

× This environment is externally managed
╰─> To install Python packages system-wide, try brew install
    xyz, where xyz is the package you are trying to
    install.

    If you wish to install a non-brew-packaged Python package,
    create a virtual environment using python3 -m venv path/to/venv.
    Then use path/to/venv/bin/python and path/to/venv/bin/pip.

    If you wish to install a non-brew packaged Python application,
    it may be easiest to use pipx install xyz, which will manage a
    virtual environment for you. Make sure you have pipx installed.