How can I deploy shiny in docker? - r

I have a shiny app that is running on an EC2 instance that I'd like to deploy in docker. Running the shiny app on localhost (so the EC2 instance) works fine, albeit it takes ~5 minutes to load.
However, I've been told to run the following command to get the website running:
sudo docker run --rm -p $PORT:1234 --mount type=bind,source=/mnt/compbio/jupyter_s3contents/web/dashboard,target=/srv/shiny-server/ --mount type=bind,source=/mnt/compbio/jupyter_s3contents/,target=/home/rstudio/compbio/ --mount type=bind,source=/var/log/shiny-server/,target=/var/log/shiny-server/ shiny
However, all I get is the following output, and it doesn't run beyond this point.
[2020-11-10T15:25:36.498] [INFO] shiny-server - Shiny Server v1.5.13.944 (Node.js v12.15.0)
[2020-11-10T15:25:36.503] [INFO] shiny-server - Using config file "/etc/shiny-server/shiny-server.conf"
[2020-11-10T15:25:36.533] [WARN] shiny-server - Running as root unnecessarily is a security risk! You could be running more securely as non-root.
[2020-11-10T15:25:36.536] [INFO] shiny-server - Starting listener on http://[::]:1234```
I am new to docker, any idea what I am doing wrong here?

Related

Unable to run shiny server pro in evaluation period

I am trying to deploy shiny server pro on a ubuntu 19.04 machine. I opted for the 45 days evaluation period where in Rstudio provides unrestricted access to shiny server pro features for the said period. But after setting up the server, I found out in the logs that my evaluation period had expired just after one day of use.
For setting up the server I followed the following steps:
Entered my details in the evaluation period form in this link https://rstudio.com/products/shiny-server-pro/evaluation/
I received a link in my mail which took me to the page which contains the commands to set up the R shiny pro server in ubuntu. This can be found here https://rstudio.com/products/shiny/download-commercial/ubuntu/
After following the steps,and changing the run_as parameter to my username in shiny-server.conf file I was able to get the server running. But found this in the logs:
[2019-10-15T14:05:28.424] [INFO] shiny-server - Shiny Server Pro v1.5.12.1023 (Node.js v10.15.3)
[2019-10-15T14:05:28.426] [INFO] shiny-server - Using config file "/etc/shiny-server/shiny-server.conf"
[2019-10-15T14:05:28.427] [INFO] shiny-server - Using non-persistent random cookie secret
[2019-10-15T14:05:28.467] [INFO] shiny-server - No authentication system configured.
[2019-10-15T14:05:28.469] [INFO] shiny-server - Starting listener on http://[::]:3838
[2019-10-15T14:05:28.478] [INFO] shiny-server - License type: traditional
[2019-10-15T14:05:28.539] [INFO] shiny-server - Licensing check succeeded.
[2019-10-15T14:05:28.541] [ERROR] shiny-server - Your evaluation has ended. Please activate!
I tried the same steps on an EC2 instance, but ran into the same problem.
for anyone facing a similar issue kindly note that I was able to resolve the above error by raising a ticket to Rstudio who acknowledged the same and were kind enough to provide me with a new trial period key

Shiny-server looking for config file in wrong path

After our server being offline all weekend I'm trying to restart our shiny server. This is run on a mac, in the terminal I'm running
sudo shiny-server start
but I'm getting a strange error
[2018-03-26 13:43:12.370] [INFO] shiny-server - Shiny Server v1. 5. 7.0
(Node.js v6.10.3)
[2018-03-26 13:43:12.373] [INFO] shiny-server - Using config file
"/Users/rgraves/start"
[2018-03-26 13:43:12.387] [ERROR] shiny-server - Error loading config: File
"/Users/rgraves/start" does not exist
[2018-03-26 13:43:12.387] [INFO] shiny-server - Shutting down worker processes
Obviously this is telling me the config file doesn't exist, which is true in this location. It exists exactly where I would expect it to at
/etc/shiny-server/shiny-server.conf
Why would shiny server not be using the default location for the config file? and how can I change it back to what it was before?

Shiny Server on Centos configuration

I recently installed shiny-server on my Centos 7 server. (centos-release-7-2.1511.el7.centos.2.10.x86_64)
I am unable to get the server started however, and it appears it's not looking for the right config file on boot. I have my my shiny-server.conf file in the default location of /etc/shiny-server/shiny-server.conf
Trace:
[2016-08-03 00:25:52.907] [INFO] shiny-server - Shiny Server v1.4.2.786 (Node.js v0.10.40)
[2016-08-03 00:25:52.911] [INFO] shiny-server - Using config file "/root/start"
[2016-08-03 00:25:52.926] [ERROR] shiny-server - Error loading config: File "/root/start" does not exist
[2016-08-03 00:25:52.926] [INFO] shiny-server - Shutting down worker processes
Apparently it's just looking in root/start?
Any help would be greatly appreciated
You could use sudo systemctl start shiny-server

Shiny server: application failed to start

I have installed the shiny server on another ubuntu ip and using it through putty on windows. But the application is failing to start as you can see on the right column (An error has occured in bold). What configuration should I make to start the application on the shiny server? Please help.
I have opened the whole path to the R file in linux and the permissions are granted to the R file. Still not working.
Moreover, when I try to open the shiny-server.config file in etc/shiny-server/shiny-server.config , it shows:
[2015-08-19 12:13:59.666] [INFO] shiny-server - Shiny Server v1.4.0.721 (Node.js v0.10.21)
[2015-08-19 12:13:59.669] [INFO] shiny-server - Using config file "/etc/shiny-server/shiny-server.conf"
[2015-08-19 12:13:59.750] [ERROR] shiny-server - Error loading config: The user 'hadoop' does not have permissions to run applications as one of the users in 'shiny'. Please restart shiny-server as one of the users in 'shiny'. (/etc/shiny-server/shiny-server.conf:2:1)
[2015-08-19 12:13:59.751] [INFO] shiny-server - Shutting down worker processes
The line Error loading config: The user 'hadoop' does not have permissions to run applications as one of the users in 'shiny'. Please restart shiny-server as one of the users in 'shiny'. (/etc/shiny-server/shiny-server.conf:2:1)
says that you are trying to start shiny-server as a user named hadoop and this is not possible because the only user who can start this shiny-server is shiny and this is written in the second line of /etc/shiny-server/shiny-server.conf file. Try to edit beggining of this file from
# Instruct Shiny Server to run applications as the user "shiny"
run_as shiny;
to
# Instruct Shiny Server to run applications as the user "shiny"
run_as hadoop shiny;

django-nginx-gunicorn on Amazon ec2 is not working?

I have tried this tutorial http://adrian.org.ar/python/django-nginx-green-unicorn-in-an-ubuntu-11-10-ec2-instance to setup django with ngnix and gunicorn.I have installed django and gunicorn in virtualenv environment.Everthing has got installed perfectly and even every command works.When i try this command gunicorn_django -b 0.0.0.0:8000 after going into my django app folder it starts gunicorn and shows following on shell:
2012-05-22 13:22:38 [3146] [INFO] Starting gunicorn 0.14.3
2012-05-22 13:22:38 [3146] [INFO] Listening at: http://0.0.0.0:8000 (3146)
2012-05-22 13:22:38 [3146] [INFO] Using worker: sync
2012-05-22 13:22:38 [3149] [INFO] Booting worker with pid: 3149
But if i goto my amazon DNS http://ec2-XX-XX-XXX-XXX.compute-1.amazonaws.com:8000/ through browser i got nothing and broswer simply shows " could not found/connect" message.But if I goto http://ec2-XX-XX-XXX-XXX.compute-1.amazonaws.com through browser it shows Ngnix welcome page.I dont know why is gunicorn not returning me Django welcome page when i Goto http://ec2-XX-XX-XXX-XXX.compute-1.amazonaws.com:8000.I cant even see any GET request log in shell coming to gunicorn worker.I have trying changing port with gunicorn_django command but had no luck and got same result gunicorn doesnot serve any page.
Please note I am using django-nonrel.
it looks like you need to configure the security group that control the access to your EC2 instance.
You should end with something like this:
https://skitch.com/ikis/8h1tc/aws-management-console
In my example, 22, 80 and 8000 are opened to world.

Resources