webtweakers to run pypiserver, first create a new "Nginx Proxy Port" app and make a note of the app's port assignment, then SSH to the app's shell user and run the following commands:
# replace APPNAME with your app name:
cd ~/apps/APPNAME
python3.13 -m venv env
source env/bin/activate
pip install pypiserver
# the next command starts the app, replace APPNAME with your app name and 55555 with your assigned port:
daemonize -c ~/apps/APPNAME -o ~/logs/apps/APPNAME/out.log -e ~/logs/apps/APPNAME/err.log -a -p ~/logs/apps/APPNAME/pid ~/apps/APPNAME/env/bin/pypi-server run -i 127.0.0.1 -p 55555
At this point the app should be running in the background. Connect the app to a site via your Opalstack control panel and it should then be available on a public URL, or if you only want to connect locally use http://127.0.0.1:5555
You can stop the app by running:
kill $(cat ~/logs/apps/APPNAME/pid)
I'll note that when running on the server http://127.0.0.1:5555/ will be accessible to anyone on the server who happens to query the port. If your intent is to use pypiserver privately then I recommend using the authentication options (run `pypi-server run --help" for the details).