help with cBio docker installation

226 views
Skip to first unread message

4jxis3+7m6...@guerrillamail.com

unread,
Oct 12, 2016, 4:21:21 PM10/12/16
to cbiop...@googlegroups.com
Hello,

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



daniel.r...@gmail.com

unread,
Oct 25, 2016, 5:17:36 PM10/25/16
to cBioPortal for Cancer Genomics Discussion Group
I was also interested in installing cBio using Docker, but ran into similar problems. I'd be grateful for any assistance.

Thanks,
Daniel

JianJiong Gao

unread,
Oct 26, 2016, 12:23:40 PM10/26/16
to Alexandros Sigaras, cbiop...@googlegroups.com, Gross, Benjamin E./Sloan-Kettering Institute, Ino/Sloan Kettering Institute de Bruijn
Hi Alex,

We have some users asking about docker installation (see below). Would
you be able to help them?

Thanks,
-JJ
> --
> You received this message because you are subscribed to the Google Groups "cBioPortal for Cancer Genomics Discussion Group" group.
> To unsubscribe from this group and stop receiving emails from it, send an email to cbioportal+...@googlegroups.com.
> To post to this group, send email to cbiop...@googlegroups.com.
> Visit this group at https://groups.google.com/group/cbioportal.
> For more options, visit https://groups.google.com/d/optout.
Reply all
Reply to author
Forward
0 new messages