Docker Image #12035
closed
Please deploy a Docker container with the "out of the box" LimeSurvey community version
100%
A container with Limesurvey (https://www.limesurvey.org/en/) installed and ready to go
Description
In the context of ENVRIPlus Project we would need (possibly bu the end of this week) to deploy a LimeSurvey community version which installation comes with a built-in simple web server (port 80 as default)
For version please see:
Updated by Andrea Dell'Amico almost 7 years ago
- Container registry URL set to cramirez/limesurvey
Do we need any persistent storage?
Updated by Massimiliano Assante almost 7 years ago
Andrea Dell'Amico wrote:
Do we need any persistent storage?
Of course we do, the created surveys must stay
Updated by Maggie Hellström almost 7 years ago
Well, to me this is a bit complicated to understand how you want to:
- deal with the LimeSurvey installation as such, since it comes with its own built-in database and storage (for both the surveys, the questions, and the responses)
- couple the LimeSurvey results database to the ENVRIplus Service Portfolio catalogue - I suggested initially to, for each individual service being evaluated, extract important results and/or statistics from LimeSurvey and store this in the portfolio catalogue (together with the other information in there), but I understood from Massi that this wasn't necessary or even desirable.
Now, I'm happy to leave these issues to you experts, but I would like to make sure that no information is lost if, for example, the LimeSurvey installation would fail catastrophically for whatever reason. A lot of information could be lost, or at least be difficult to retrieve from backups.
Updated by Andrea Dell'Amico almost 7 years ago
I was asking because nothing was specified in the request, but the container image runs a mysql instance and saves the surveys locally. I'll provide an external storage for both mysql and the surveys.
Updated by Andrea Dell'Amico almost 7 years ago
- Status changed from New to In Progress
- % Done changed from 0 to 40
I'm trying to run the container giving it a different location, because the docker server is shared with other containers, but it's not working. The option is listed in the container documentation https://hub.docker.com/r/crramirez/limesurvey/ but it's not effective. I started the container with the command
docker run -d --name limesurvey -p 8082:80 -e HTTP_LOCATION="limesurvey" -v limesurvey_mysql:/var/lib/mysql -v limesurvey_data:/app/upload crramirez/limesurvey:latest
But the accesses to https://docker-exec1.d4science.org/limesurvey/ are redirected to /
( https://docker-exec1.d4science.org/index.php?r=installer/welcome )
I see from the logs that the container starts correctly, but the environment variable is ignored.
Updated by Andrea Dell'Amico almost 7 years ago
I see that the variable is been passed to the container. The output of docker container inspect limesurvey
reports
"Env": [ "HTTP_LOCATION=limesurvey", "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin", "DEBIAN_FRONTEND=noninteractive", "PHP_UPLOAD_MAX_FILESIZE=10M", "PHP_POST_MAX_SIZE=10M" ],
But still it seems that the application does not honour it.
@margareta.hellstrom@nateko.lu.se Any hints? Did you run the container with a similar configuration?
Updated by Andrea Dell'Amico almost 7 years ago
Manually fixing all the redirections I am able to reach https://docker-exec1.d4science.org/limesurvey/index.php?r=installer/welcome that presents the installation page, but going further is not possible.
Updated by Andrea Dell'Amico almost 7 years ago
Never mind, it was my fault. The application is reachable. @massimiliano.assante@isti.cnr.it the docker server is currently configured to be accessed by the infra gateway only. Do you plan to make the application reachable through the portal, or do I need to open the https port to the world?
Updated by Massimiliano Assante almost 7 years ago
Andrea Dell'Amico wrote:
Never mind, it was my fault. The application is reachable. @massimiliano.assante@isti.cnr.it the docker server is currently configured to be accessed by the infra gateway only. Do you plan to make the application reachable through the portal, or do I need to open the https port to the world?
Margareta and her colleagues need to access via http(s) and as LimeWire Administrator users.
Updated by Maggie Hellström almost 7 years ago
Thank you Andrea for all your hard work! Sorry for not replying sooner, but I see from the recent messages that the issue you had earlier now seems to have been sorted out. As for access, yes I and my colleagues in ENVRIplus WP9 need to be able to access both the installation's administrative interface, and any surveys that we create, directly from the outside via the corresponding URLs - I believe all of these use https protocol. Later, we would like to integrate the surveys we have created with the ENVRIplus service catalogue by giving users the possibility to run surveys by clicking on a link, which would then open a page in their browser. Cheers, Maggie
Updated by Andrea Dell'Amico almost 7 years ago
- Assignee changed from _InfraScience Systems Engineer to Maggie Hellström
Thanks for the clarifications. The application is now reachable from anywhere at https://docker-exec1.d4science.org/limesurvey/, please configure it as soon as you can because right now if someone discovers the URL can mess with it.
Updated by Andrea Dell'Amico almost 7 years ago
- Status changed from In Progress to Feedback
- % Done changed from 40 to 100
Updated by Maggie Hellström almost 7 years ago
Dear all,
Together with my colleague Claudio, I have now successfully configured the LimeSurvey installation. As a result, following the link you sent earlier now results in the visitor arriving at a welcome page, rather than the setup dialogue. Please let me know if you would like me to set up a user account for anybody from your group, and if you require any other information.
I've only found one technical issue so far, in that it seems that the LimeSurvey installation lacks the possibility to send e-mails - probably because the OS inside the Docker isn't set up to allow that?
This is somewhat limiting as for example new users added to the system aren't notified, but I can live with that for now. However, as the system becomes operational, it will be necessary to allow messages to be sent to users - for example to invite them to take surveys, or to send summaries of responses after people complete a survey. So I hope this doesn't constitute a huge security issue for you and that the capability to send emails can be eventually added.
Anyway, we'll start testing the installation in the coming weeks, adding a few test surveys and preparing the groundwork for the "real" service evaluation application - but because of the summer holidays there probably won't be too much done until early August.
Updated by Leonardo Candela almost 7 years ago
- Status changed from Feedback to Closed
I'm going to close this ticket since the deployment of the technology is done. I'm going to open a follow up ticket to discuss the integration of this technology with the rest.
Updated by Andrea Dell'Amico almost 7 years ago
- Status changed from Closed to In Progress
- Assignee changed from Maggie Hellström to _InfraScience Systems Engineer
Maggie Hellström wrote:
Dear all,
I've only found one technical issue so far, in that it seems that the LimeSurvey installation lacks the possibility to send e-mails - probably because the OS inside the Docker isn't set up to allow that?
Yes, we never allow sending email if not explicitly requested.
What options do you have from the application? I can setup a username/password to talk with our internal relay, you have to support TLS as a transport, on port 587.
Is it OK for you?
Updated by Maggie Hellström almost 7 years ago
Dear Andrea,
I don't know at the moment how the LimeSurvey application inside the Docker is configured. I have to talk to my colleagues here in Lund, but some of them are already on vacation. I'll see if I can get a fast answer, otherwise it's fine to wait until after the summer break.
Is there some way that we can access the Docker itself, and log in to it directly? Such access could be very helpful when trying to identify the best way to set up the mailing-related parameters. In addition, we are likely to write some customized plug-ins for the LimeSurvey installation (to enhance the built-in statistics and reporting modules). Implementing these would also benefit from being able to modifying the Docker contents directly.
Updated by Andrea Dell'Amico almost 7 years ago
Maggie Hellström wrote:
Dear Andrea,
I don't know at the moment how the LimeSurvey application inside the Docker is configured. I have to talk to my colleagues here in Lund, but some of them are already on vacation. I'll see if I can get a fast answer, otherwise it's fine to wait until after the summer break.
Is there some way that we can access the Docker itself, and log in to it directly?
No I'm sorry, but the only way would be giving you access to the docker servers as docker
user, to permit you to open a shell inside the container. But that way you would have access to the docker service and all the running containers.
Such access could be very helpful when trying to identify the best way to set up the mailing-related parameters. In addition, we are likely to write some customized plug-ins for the LimeSurvey installation (to enhance the built-in statistics and reporting modules). Implementing these would also benefit from being able to modifying the Docker contents directly.
Well, that's the opposite of how containers are supposed to work. It would be better creating a new image starting from the original one, so that the modifications aren't lost after an upgrade.
Updated by Maggie Hellström almost 7 years ago
We seem to have been able to solve the issue with the mail sending capability: my colleague Claudio has set up a dedicated gmail account (envriCommunity@gmail.com), and configured the LimeSurvey installation so that it uses Gmail (smtp.gmail.com:587) to send administrative emails from the system. We have run some tests, and it seems to work fine. I hope there won't be any firewall issues or similar preventing this workaround. Have a nice summer!
Updated by Massimiliano Assante almost 7 years ago
- Status changed from In Progress to Closed
This is excellent news! Thanks everyone