Onyeibo Oku writes:
I am not sure I understand what you mean by apps. Is that Django apps (./manage.py startapp app)? Do you mean a Django Project instead (./manage.py startproject app)?
An app for my purpose is everything configured via the settings.py used by the Django application created in a wsgi.py file. I guess you would think of them as projects.
What I have here is an active website project (live) done on Django framework. It runs from a different virtual environment (venv).
hence: mailman --> /opt/mailman/venv website --> /srv/website/venv (has a running uwsgi instance)
The venvs isolate the Python code used by each app from the other. But the apps can still have conflicts over ports (this is mentioned in the Django docs), filesystem objects, and other resources. For example, a lot of applications use the /static/ location as a place to keep content that is supplied by your project and doesn't change. This is problematic if two different apps each wants to install a default.css, but they're different. One of the apps is going to look funny.
Only the person who configures the apps can guess whether this kind of conflict will arise. Neither Mailman nor Django itself tries to protect you from such conflicts (I don't see how they could, in fact).
In whichcase, it doesn't hurt to follow the doc to its logical conclusion?
I don't understand what you mean by logical conclusion.
That is to follow the guide to the end of the page (disregarding the possibility of conflicts).
No, you can't disregard the possibility of conflicts. My understanding from what you've posted so far is that you have an app "website" that is already implemented and running. Most likely that app has configured resources (specifically ports and website locations in particular /static/) that are likely to conflict. You need to manage those conflicts, most likely by changing the ports used by Mailman, Postorius, and Hyperkitty and by mapping a different location such as /mailman/static/ to the /var directory that actually contains the static files managed by "manage.py collectstatic".
There may be other possible conflicts, but I can't help you with those because they depend on your website code.
Steve