Folksonomy API#
Folksonomy is a service to allow contributors to freely add labels and values to products.
The code is at https://github.com/openfoodfacts/folksonomy_api/
Deployment#
Folksonomy is deployed on a LXC container. (108 at the time of writing)
Code is in /home/folksonomy/folksonomy_api
It is started thanks to a systemd unit: folksonomy.service
(config at /etc/systemd/system/folksonomy.service
)
Server is running uvicorn on port 8000 with user folksonomy.
It is served behind the NGINX reverse proxy
Useful commands#
Status (reload/restart/etc.):
systemctl status folksonomy
See service logs:
sudo journalctl -u folksonomy
Upgrade#
Before every upgrade, make a snapshot of the Proxmox container. Then:
# Switch to "folksonomy" user
su folksonomy
# Upgrade from git repository
git pull
# Install new depencies if any
pip install -r requirements.txt
# DB migration process
yoyo apply --database postgresql:///folksonomy
# Finally, restart the service (with root user or root rights or sudo rights)
systemctl restart folksonomy