GMOD / docker-apollo

:whale: Apollo 2.X Docker Image
GNU General Public License v3.0
10 stars 12 forks source link

BLAT error - Error running search: Cannot run program "/usr/local/bin/blat": error=2, No such file or directory #30

Closed michaelp896 closed 5 years ago

michaelp896 commented 5 years ago

I set up Apollo from the container and I'm trying to get blat working.

I installed blat in /usr/local/bin: screen shot 2018-10-24 at 13 46 08

and when I added my organism I set the path to the search directory to go to the .2bit file: screen shot 2018-10-24 at 13 49 28

in the setup guide it mentioned something about configuring the groovy file for the search tools. Is this necessary when running production from the container? Is there anything else I need to configure?

Thanks!

nathandunn commented 5 years ago

Yes. You need to properly have BLAT added (this is probably something I should have added to the image by default).

https://genomearchitect.readthedocs.io/en/latest/Configure.html?highlight=blat#main-configuration https://genomearchitect.readthedocs.io/en/latest/Configure.html?highlight=blat#main-configuration

On Oct 24, 2018, at 4:53 AM, michaelp896 notifications@github.com wrote:

I set up Apollo from the container and I'm trying to get blat working.

I installed blat in /usr/local/bin: https://user-images.githubusercontent.com/3137703/47428314-2f634780-d793-11e8-83aa-56db228b0eb1.png and when I added my organism I set the path to the search directory to go to the .2bit file: https://user-images.githubusercontent.com/3137703/47428563-efe92b00-d793-11e8-8bc5-db09681f41a1.png in the setup guide it mentioned something about configuring the groovy file for the search tools. Is this necessary when running production from the container? Is there anything else I need to configure?

Thanks!

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/GMOD/docker-apollo/issues/30, or mute the thread https://github.com/notifications/unsubscribe-auth/AAt2qtj_0HhYNRXx1G0x8qf2okIt4q2hks5uoFS-gaJpZM4X3vv4.

michaelp896 commented 5 years ago

Hmm, I configured the groovy file in the image as suggested and I'm still getting the same error :-( screen shot 2018-10-25 at 16 30 27

here's the relevant portion of the groovy file:

apollo {
    default_minimum_intron_size = System.getenv("WEBAPOLLO_MINIMUM_INTRON_SIZE") ? System.getenv("WEBAPOLLO_MINIMUM_INTRON_SIZE").toInteger() : 1
    history_size = System.getenv("WEBAPOLLO_HISTORY_SIZE") ? System.getenv("WEBAPOLLO_HISTORY_SIZE").toInteger() : 0
    overlapper_class = System.getenv("WEBAPOLLO_OVERLAPPER_CLASS") ?: "org.bbop.apollo.sequence.OrfOverlapper"
    use_cds_for_new_transcripts = System.getenv("WEBAPOLLO_CDS_FOR_NEW_TRANSCRIPTS").equals("true") // will default to false
    feature_has_dbxrefs = System.getenv("WEBAPOLLO_FEATURE_HAS_DBXREFS") ?: true
    feature_has_attributes = System.getenv("WEBAPOLLO_FEATURE_HAS_ATTRS") ?: true
    feature_has_pubmed_ids = System.getenv("WEBAPOLLO_FEATURE_HAS_PUBMED") ?: true
    feature_has_go_ids = System.getenv("WEBAPOLLO_FEATURE_HAS_GO") ?: true
    feature_has_comments = System.getenv("WEBAPOLLO_FEATURE_HAS_COMMENTS") ?: true
    feature_has_status = System.getenv("WEBAPOLLO_FEATURE_HAS_STATUS") ?: true
    translation_table = "/config/translation_tables/ncbi_" + (System.getenv("WEBAPOLLO_TRANSLATION_TABLE") ?: "1") + "_translation_table.txt"
    get_translation_code = System.getenv("WEBAPOLLO_TRANSLATION_TABLE") ? System.getenv("WEBAPOLLO_TRANSLATION_TABLE").toInteger() : 1

    // MP EDIT: ADDED BLAT FUNCTIONALITY AND SET PATH TO BIN
    sequence_search_tools = [
        blat_nuc: [
          search_exe: "/usr/local/bin/blat",
          search_class: "org.bbop.apollo.sequence.search.blat.BlatCommandLineNucleotideToNucleotide",
          name: "Blat nucleotide",
          params: ""
        ],
        blat_prot: [
          search_exe: "/usr/local/bin/blat",
          search_class: "org.bbop.apollo.sequence.search.blat.BlatCommandLineProteinToNucleotide",
          name: "Blat protein",
          params: ""
        ]
      ]
    // TODO: should come from config or via preferences database
    splice_donor_sites = System.getenv("WEBAPOLLO_SPLICE_DONOR_SITES") ? System.getenv("WEBAPOLLO_SPLICE_DONOR_SITES").split(",") : ["GT"]
    splice_acceptor_sites = System.getenv("WEBAPOLLO_SPLICE_ACCEPTOR_SITES") ? System.getenv("WEBAPOLLO_SPLICE_ACCEPTOR_SITES").split(",") : ["AG"]
    gff3.source = System.getenv("WEBAPOLLO_GFF3_SOURCE") ?: "."

    google_analytics = System.getenv("WEBAPOLLO_GOOGLE_ANALYTICS_ID") ?: ["UA-62921593-1"]

    admin{
        username = System.getenv("APOLLO_ADMIN_EMAIL") ?: "michael.poeschla@gmail.com"
        password = System.getenv("APOLLO_ADMIN_PASSWORD") ?: "password"
        firstName = System.getenv("APOLLO_ADMIN_FIRST_NAME") ?: "Michael"
        lastName = System.getenv("APOLLO_ADMIN_LAST_NAME") ?: "P"
    }
}

any other suggestions for what might be going on?

nathandunn commented 5 years ago

Its probably because its not there. I added this to the docker image, but you can always do the same via bash:

RUN curl -s "http://hgdownload.soe.ucsc.edu/admin/exe/linux.x86_64/blat/blat" -o /usr/local/bin/blat
RUN chmod +x /usr/local/bin/blat
michaelp896 commented 5 years ago

ah. I see now. Thanks!