Help request to set up Particify from docker

Hi,

I would like to set up Particify using docker. Particify is in Git-Lab:

I do not have any knowledge on docker / gitlab … Is there anybody out who like to teach a noob ?

TIA
Thorsten

Hello Thorsten,

do you have installed docker-engine and docker-compose?

Best Regards

Quick installation notes for Particify-docker from the Particify docs.

# install requirements
yum -y install git nethserver-docker

# enable portainer
config setprop portainer status enabled
signal-event nethserver-docker-update

# get docker-compose and set permissions
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose

# Clone the particify docker repo
git clone https://gitlab.com/particify/dev/foss/docker-orchestration.git

# Set env to production and start the containers
cd docker-orchestration/
./set-env.sh prod

# I used ports 8001 and 8002 to not conflict with local apache2.
PORT=8001 HTTPS_PORT=8002 docker-compose up -d

Join the “particify_arsnova-proxy_1” container to the aqua network (see this thread for screenshots) and use a named reverse proxy to http://localhost:8001.

3 Likes

I do not even know what that is - I have heard about the existance of something called docker, but thats it.

In this case, I am a MSU (most stupid user) …

Hi Markus,

thanks for providing an answer that fast. I followed your commands one by one, but it does not work:

  • The https website does not work while http seems to present the website
  • I think the backend is missing: It is not possible to login or create a user account. It ends up in some error messages (German: “da ist etwas schief gegangen …”)
  • No default admin password is provided to do any setup

Did you setup a reverse proxy? HTTPS on port 8002 is unused, I needed to set it to not conflict with local apache.

Sorry, I can’t find relevant documentation about default login or register mail setup.

Yes and no, but I do think, we are talking about different configurations:

  1. I set up a complete new and indepmendent VM where I installed NS 7 (S05, ip xx.xx.xx.236) next to my regular system (S01, IP xx.xx.xx.12).
  2. I installed docker and the everything you proposed in S05
  3. I am able to connect to HTTP on xx.xx.xx.236:8000

I thought you ment reverse proxy from xx.xx.xx.12 → xx.xx.xx.236:8001 which is my default configuration if I want the website to be accessible from outside. Than I create a vhost within xx.xx.xx.12 e.g. particify.mydomain.tld and revese proxy it to xx.xx.xx.236:8001.

Correct or do I need to set up something reverse in the aqua / portainer on 236?

And why do I need to have aqua (sorry, I do not know the concept of docker networks, I do not have any knowledge on docker, whatever that ist).

TIA

I meant a reverse proxy to localhost on the VM itself, this way there’s no need to open another port.

IIRC the arsnova containers use their own network so you need to add the arsnova-proxy container to a network localhost can connect to without adding firewall rules.

So reverse proxy is not necessery if I do not intend to foreward by hostname. No, I did not set up reverse proxy, but I will do when the particify is ready to use … but it is not

  • https does not work - error if I try to access via https://xx.yy.zz.263:8001
  • Obviously just the frontend works - not the database backend. No user can create an accout nor login
  • Guest access ist not possible either

@thorsten let me try installing and inform how it goes,
though i never really understood what particify actually acheives, maybe you can shed more infor, as there is not alot of info in english about it.

1 Like

Hi @oneitonitram ,

thanks, your help is very much appreciated - I am more a user than an installer. Particify is an Auditorium Response System (ARS), which allows a presenter to get feedback from his auditorium. You may integrate questions or polls on your Powerpoint slides and you can view the answers of the auditorium online. Particify is dedicated to school and university, e.g. a teacher may ask students to answer on a multiple choice question. He may show the statistics of answers and show the correct answer.

It is like other poll systems, however, it is dedicated to have the answers live and online in your presentation.

Most of such systems are paid - and extremly expensive, e.g. the minimum fee for Mentimeter is 120 $ for a one year license - even if you do have one presentation. That might be interesting to a company … but not for me.
Particify is an open-source system, and you can host it for yourself. This is important to me, I am - sorry - not a fan of any type of cloud services. I do not believe in clouds.

TIA
Thorsten

very interesting,
so whats preventing someone from using it as a standard poll and qa program? does it have other non normal features to prevents someone form usign it as such

It is live and online.

meaning? the answeres are visisble by everyone?

yes, this is right

I installed the systema nd it works well on my part, well untill the login screen.

this is what i get when i try to create a new room

Exactly the same for me - I am not sure, I think it does require

a) any type of backend such as ldap which is not described in ten „manual“
b) maybe some link parameters during dockers container start - maybe it needs to be linked to a central system or it does need specific names. I did not understand the list of starting parameters.

Best regards
Thorsten

Hi,

I managed to fire up a running system, however, Arsnova has a known issue. It does not work if not running on standard http ports (80 / 443). Therefore I set up docker in another environment (proxmox lxc container instead of the nethserver instance). I was using Ubuntu 21.04.

apt-get update
apt-get install     ca-certificates     curl     gnupg     lsb-release
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
echo   "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
apt-get update
apt-get install docker-ce docker-ce-cli containerd.io
curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
git clone https://gitlab.com/particify/dev/foss/docker-orchestration.git
./set-env.sh prod
JWT_SECRET=0123456789test ARSNOVA_HOSTNAME=arsnova.mydomain.tld docker-compose up
cd docker-compose
nano docker-orchestration.override.yml

The last two command give access to the configuration file of Arsnova, where I added:

environment:
  SYSTEM_MAIL_HOST: my_mail_host.my_domain.tld
  SYSTEM_MAIL_SENDERADDRESS: particify@my_domain.tld

under the the section

arsnova-backend-core:
  restart: unless-stopped

So if somebody wants a Audience Resonpse System like Mentimeter or so … OK, not running under Nethserver … here we go :slight_smile:

Some more config info can be found here:

So if anybody wants to try more … it is working on the green network internally, but I did not manage behind nethserver web service reverse proxy which forwards the request to the corresponding host. This does work for me e.g. using proxmox, ecodms and some others but not for arsnova :frowning:

1 Like

Thanks for posting your progress. If I can get any farther along I’ll post here also.

1 Like