I'm trying to install a local instance of the cBio web portal. I've been following
https://cbioportal.readthedocs.io/en/latest/Build-from-Docker.html
to install cBio via Docker. It's very helpful, but I'm wondering---do you have any plans to complete the "Coming Soon" sections? I'm a beginner with both cBio and Docker, and it's difficult to complete the installation with missing information. I thought the point of Docker containers was to mitigate installation issues---both dependencies and configuration files---and make things run out of the box. However, I've run into just these type of installation woes.
I've found a number of issues:
* the link to the seed db on the page is broken:
https://cbioportal.readthedocs.io/Downloads.html#seed-database
It links to a page not found error.
I found it here: https://storage.googleapis.com/cbiostorage-1/cbioportal-seed.sql.gz , but FYI
* When I run the cbioportal and db containers and then look at my docker logs:
docker logs cbioportal
I see an error:
cp: cannot stat ‘/cbio_config/portal.properties’: No such file or directory
The docker command that you give maps:
-v /custom_config/folder_path/:/custom_config/
Should this be
-v /custom_config/folder_path/:/cbio_config/
instead?
I assumed this was so, and put the files:
log4j.properties portal.properties settings.xml
into that directory. However, it still complains about a missing file, context.xml:
cp: cannot stat ‘/cbio_config/context.xml’: No such file or directory
Are these files supposed to be linked from the localhost? Or could they be included in the cBio container to ease the installation process?
I ran docker inspect:
docker inspect cbioportal
to see what commands the container runs, and found the following:
"cp /cbio_config/portal.properties $PORTAL_HOME/src/main/resources/portal.properties
cp /cbio_config/log4j.properties $PORTAL_HOME/src/main/resources/log4j.properties
cp /cbio_config/context.xml $CATALINA_HOME/conf/context.xml
cp /cbio_config/gene_sets.txt $PORTAL_HOME/core/src/main/resources/
cp /cbio_config/settings.xml /root/.m2/
mvn -DskipTests clean install
cp $PORTAL_HOME/portal/target/cbioportal.war $CATALINA_HOME/webapps/
export PORTAL_HOME=$PORTAL_HOME/core/src/main/resources/
sh $CATALINA_HOME/bin/catalina.sh run"
I was able to find the missing files, context.xml and gene_sets.txt, in your github repository:
find ~/github/cbioportal -name "context.xml"
~/github/cbioportal/portal/src/main/webapp/META-INF/context.xml
find ~/github/cbioportal -name "gene_sets.txt"
~/github/cbioportal/core/src/test/resources/gene_sets.txt
I copied these into my custom_config directory and the errors went away, and I could see the "Tomcat Web Application Manager" on my website.
In order to use this GUI, I had to log in to the container and modify $CATALINA_HOME/conf/tomcat-users.xml by adding:
<role rolename="manager-gui"/>
<user username="xyz" password="xyz" roles="manager-gui"/>
Could this be included in the container by default to make things easier for the user?
My context.xml is the following:
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/cbioportal"/>
Now, when I inspect the cBio docker logs, I'm seeing the error:
11-Oct-2016 15:11:01.162 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initiali
zed event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityMapper' defined in class path resource [applicatio
nContext-business.xml]: Cannot resolve reference to bean 'sqlSessionFactory' while setting bean property 'sqlSessionFactory'; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sqlSessionFactory' defined in class path resource [appli
cationContext-business.xml]: Cannot resolve reference to bean 'businessDataSource' while setting bean property 'dataSource'; nested exception is
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'businessDataSource' defined in class path resource [appli
cationContext-business.xml]: Invocation of init method failed; nested exception is javax.naming.NameNotFoundException: Name [jdbc/cbioportal] is
not bound in this Context. Unable to find [jdbc].
A stackoverflow post suggested modifying the context.xml to:
context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context antiJARLocking="true" path="/cbioportal">
<ResourceLink name="jdbc/mydb" global="jdbc/mydb" type="javax.sql.DataSource"/>
</Context>
However, the error persists. What should this file be to prevent this error?
* another FYI, I notice some inconsistency in the conventions used in your documentation:
at some points the sample (user, password) is referred to as (cbio, P@ssword1), while at other points (https://cbioportal.readthedocs.io/en/latest/Pre-Build-Steps.html) the sample (user, password) is (cbio_user, somepassword)
Thanks!
----
Sent using GuerrillaMail.com
Block or report abuse: https://www.guerrillamail.com/abuse/?a=QkN9Ch0PUaAUhC6z%2F3EYfhHAX8WFwsQexKtP