This repo cotnains the code used to run the Lojban vlasisku Server, which runs inside a pair of containers, one for the web server and one for the IRC bots.
This repo should always have what we're using in production; if you change something, please check it in!
Docker, or Podman. That should be it.
Run setup.sh and then run_container.sh
You can run the tests in another window with:
$ docker exec -it lojban_vlasisku nosetests -v --with-doctest
$ ssh sampre_vs@jukni.lojban.org
Login is via ssh key, so if you think you should have access but that doesn't work, email webmaster@lojban.org or find rlpowell in #lojban on freenode irc.
$ systemctl --user restart vlasisku
$ systemctl --user restart vlasisku_bots
Make whatever changes you want, typically to Dockerfile or the source files, and run:
$ ./run_container.sh -t
This will run the server on an alternate port. You can reach the test instance at http://test-vs.lojban.org/
$ systemctl --user --no-page -t service -a
UNIT LOAD ACTIVE SUB DESCRIPTION
dbus.service loaded active running D-Bus User Message Bus
vlasisku.service loaded active running Site/Webserver for vlasisku.lojban.org
vlasisku_bots.service loaded inactive dead Site/Webserver for vlasisku.lojban.org
LOAD = Reflects whether the unit definition was properly loaded.
ACTIVE = The high-level unit activation state, i.e. generalization of SUB.
SUB = The low-level unit activation state, values depend on unit type.
3 loaded units listed.
To show all installed unit files use 'systemctl list-unit-files'.
$ systemctl --user status
● jukni.digitalkingdom.org
State: running
Jobs: 0 queued
Failed: 0 units
Since: Sat 2018-01-06 22:54:47 PST; 6 days ago
CGroup: /user.slice/user-1087.slice/user@1087.service
├─dbus.service
│ └─25260 /usr/bin/dbus-daemon --session --address=systemd: --nofork --nopidfile --systemd-activation --syslog-only
├─init.scope
│ ├─30255 /usr/lib/systemd/systemd --user
│ └─30257 (sd-pam)
└─vlasisku.service
└─21277 /bin/bash -x /home/sampre_vs/vlasisku/run_container.sh 2>&1
$ sudo docker exec -it lojban_vlasisku bash
This will give you a shell on the production web instance; modify as appropriate for other instances.
$ journalctl -f -t vlasisku
This will give you the logs on the production web instance.
For test instances, use the run scripts directly, and then the logs will simply be printed into your terminal.
- dag, for all of the original code
- Twey, for compiling the grammatical class usage scales.
- Adam Lopresto, for the Perl code compound2affixes mimics.