To run jupyter notebook in virtual environment, one approach is to have one global jupyter notebook installation, but to point to different kernels to run as the backend.

Assume you have installed jupyter notebook not in a virtualenv. To install on MacOS

brew install jupyter

Enter into virtual environment and install ipykernel

workon virtualenv-name

pip install ipykernel

Install a new kernel

python -m ipykernel install --user --name=virtualenv-name

or

ipython kernel install --user --name=virtualenv-name