You need to have a functional Python 3 environment to run this project. I recommend pyenv and pyenv-virtualenv.
After you can download and install the python modules into a segregated virtualenv.
# install python and create virtualenv
## NOTE: pcre grep requires GNU grep, e.g. grep -oP
LATEST_PYTHON3=$(
pyenv install --list | tr -d ' ' | grep -oP '^3\.*\d+\.\d+$' | sort -V | tail -1
)
pyenv install $LATEST_PYTHON3
pyenv virtualenv $LATEST_PYTHON3 webmf-python-flask
# change to virtualenv
cd .
# update pip module
pip install --upgrade pip
These instructions and scripts have been tested on macOS (aka Mac OS X) and Linux with Python installed.
# Install Required Packages
pip install -r requirements.txt
# Run Server
./app.py &
# Manually Test
curl -i localhost:5000/
curl -i localhost:5000/hello/Simon
# Start containerized service on Docker
docker-compose up -d
# Determine Guest is native Docker, Docker-Machine or Docker-Desktop
[ -z ${DOCKER_MACHINE_NAME} ] || WEBSERVER=$(docker-machine ip ${DOCKER_MACHINE_NAME})
WEBSERVER=${WEBSERVER:-localhost}
# Manually Test
curl -i $WEBSERVER:5000/
curl -i $WEBSERVER:5000/hello/Simon
# Start containerized service on Vagrant/Virtualbox guest
vagrant up
# Manually Test
curl -i localhost:5000/
curl -i localhost:5000/hello/Simon
./test.py
- Python Web Microframework
- Testing
- Python Environment
- python - language versions
- pyenv - manage python versions
- virtualenv to isolate packages with both Python 2 and Python 3.
- pyenv-virtualenv - pyenv plugin for ease-of-use pyenv + virtualenv integration. Can automatically switch virtualenv based on setting in
.python-version
.