Setting up a public demo server¶
A demo server is similar to a production server, but all the sites share a same environment and certain services are disabled.
Warning : This is the deeper Python jungle. Don’t try this before you have installed a few contributor environments and production servers.
Set up a shared master environment as described in Set up a master environment.
Run getlino configure
as root:
$ sudo su
# getlino configure --clone --web-server nginx --server-domain lino-framework.org --https --monit --db-engine mysql --db-user demo --db-password demo
That is, you tell getlino to clone all repositories and to install them into the shared virtualenv.
Manually edit the pull.sh
in your master environment. See less
`which pull.sh`
on an existing demo server for inspiration. (Basically a
pull.sh
does much more on a demo server than on a production server: it
also runs pm prep
on each demo site)
Multiple versions¶
You may create other shared virtualenvs by changing the branch and clone another set of repositories:
# getlino configure --shared-env /usr/local/lino/shared/stable --clone --branch stable
Specify --shared-env
when creating demo sites:
# getlino startsite noi first --shared-env /usr/local/lino/shared/stable
# getlino startsite tera second --shared-env /usr/local/lino/shared/master
Remove make_snapshot.sh
and linod entries from cron and supervisor.
How to upgrade a demo server¶
Theoretically you just sign in as a site maintainer and run pull.sh
.