caseywdunn / docker-smrtlink

Dockerfile to build a Docker image for PacBio SMR-Link
7 stars 3 forks source link

Connection attempt failed #1

Open caseywdunn opened 6 years ago

caseywdunn commented 6 years ago

docker run gives the error below. The critical bit seems to be this:

Checking server status with 'pbservice status'...
  Executing: "/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../../bundles/smrttools/smrtcmds/bin/pbservice" status --log-level DEBUG --host "56747d2fd71e" --port "9091"
Connection attempt to 56747d2fd71e:9091 failed

It looks like networking for the container isn't configured correctly, and it can't reach the host or port.

the host is set during build, specifically:

...
Status: Downloaded newer image for ubuntu:16.04
 ---> 8b72bba4485f
Step 2/15 : MAINTAINER Casey Dunn (casey.dunn@yale.edu)
 ---> Running in 56747d2fd71e
 ---> 7c704f5cac07
Removing intermediate container 56747d2fd71e
... 
The SMRT Link installation root appears to be on a local file system,
with file system type 'overlayfs'.

Using Local File System Root (computed default): /opt/pacbio/smrtlink
Detecting DNS names...

Using dnsname (detected dnsname): 56747d2fd71e

Using GUI port (default): 9090
Using services port (computed default): 9091
Using GUI shutdown port (computed default): 9092
Using GUI ajp port (computed default): 9093
Using GUI initial memory (computed default): 8192
Using GUI maximum memory (computed default): 8192
Using services initial memory (computed default): 32768
Using services maximum memory (computed default): 32768

Using SMRT View port (computed default): 9094
Using SMRT View initial memory (computed default): 32768
Using SMRT View maximum memory (computed default): 32768
...

So the host name is from the dnsname and the dnsname is from the intermediate container in which ubuntu was instantiated.

The full run error

$ docker run 0735efbedd9a
+ set -o errexit
+ set -o posix
+ set -o pipefail
+ set -o errtrace
+ trap unexpected_error ERR
+ PATH_ORIG=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
+ PATH=/usr/bin:/bin
++ basename /opt/pacbio/smrtlink/admin/bin/run-sat-services
+ g_prog=run-sat-services
++ dirname /opt/pacbio/smrtlink/admin/bin/run-sat-services
+ g_progdir=/opt/pacbio/smrtlink/admin/bin
++ readlink -f /opt/pacbio/smrtlink/admin/bin
+ g_progdir_abs=/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin
+ rootdir=/opt/pacbio/smrtlink/admin/bin/../..
+ rootdir_abs=/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../..
+ g_canneddata_dir=/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../../bundles/smrtinub/current/private/pacbio/canneddata
+ g_pbservice_exe=/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../../bundles/smrttools/smrtcmds/bin/pbservice
+ g_python_exe=/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../../bundles/smrttools/smrtcmds/bin/python
+ serverconfigfile=/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../../bundles/smrtlink-analysisservices-gui/current/private/pacbio/smrtlink-analysisservices-gui/smrtlink-system-config.json
+ g_root=/secondary-analysis
+ root=/secondary-analysis
+ echo 'Reading server configuration information...'
Reading server configuration information...
++ /opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../../bundles/smrttools/smrtcmds/bin/python -c 'import json; d = json.load(open('\''/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../../bundles/smrtlink-analysisservices-gui/current/private/pacbio/smrtlink-analysisservices-gui/smrtlink-system-config.json'\'')); print d['\''smrtflow'\'']['\''server'\'']['\''dnsName'\'']'
+ host=56747d2fd71e
++ /opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../../bundles/smrttools/smrtcmds/bin/python -c 'import json; d = json.load(open('\''/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../../bundles/smrtlink-analysisservices-gui/current/private/pacbio/smrtlink-analysisservices-gui/smrtlink-system-config.json'\'')); print d['\''smrtflow'\'']['\''server'\'']['\''port'\'']'
+ port=9091
+ /opt/pacbio/smrtlink/admin/bin/import-canneddata
Reading server configuration information...

Checking server status with 'pbservice status'...
  Executing: "/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/admin/bin/../../bundles/smrttools/smrtcmds/bin/pbservice" status --log-level DEBUG --host "56747d2fd71e" --port "9091"
Connection attempt to 56747d2fd71e:9091 failed
import-canneddata: Error! Services are not running properly...
++ unexpected_error
++ local errstat=1
+++ caller
++ echo 'run-sat-services: Error! Encountered unexpected error at '\''line 63 /opt/pacbio/smrtlink/admin/bin/run-sat-services'\'', bailing out...'
run-sat-services: Error! Encountered unexpected error at 'line 63 /opt/pacbio/smrtlink/admin/bin/run-sat-services', bailing out...
++ exit 1
caseywdunn commented 6 years ago

Could be due either to network configuration problem or services actually not being accessible. Some help on these issues here:

https://github.com/PacificBiosciences/SMRT-Link/wiki/Troubleshooting-Analysis-Services

caseywdunn commented 6 years ago

Running it interactively suggests the services aren't starting because the ulimit for the container is insufficient.

$ docker run -it 0735efbedd9a bash
smrtanalysis@d42de5caf85f:/$ $SMRT_ROOT/smrtsuite/admin/bin/services-start
bash: /opt/pacbio/smrtlink/smrtsuite/admin/bin/services-start: No such file or directory
smrtanalysis@d42de5caf85f:/$ echo $SMRT_ROOT
/opt/pacbio/smrtlink
smrtanalysis@d42de5caf85f:/$ bash $SMRT_ROOT/smrtsuite/admin/bin/services-start
bash: /opt/pacbio/smrtlink/smrtsuite/admin/bin/services-start: No such file or directory
smrtanalysis@d42de5caf85f:/$ ls /opt/pacbio/smrtlink/admin/bin/services-sta
services-start   services-status  
smrtanalysis@d42de5caf85f:/$ ls /opt/pacbio/smrtlink/admin/bin/services-sta
services-start   services-status  
smrtanalysis@d42de5caf85f:/$ /opt/pacbio/smrtlink/admin/bin/services-start
Starting SMRT View Server Node...
Tomcat started.
  SMRT View Server Node started successfully..

Step #1 Attempting to apply-config
Successfully Completed apply-config
Successfully completed running smrtflow.tools.apply_config 0.2.0 (smrtflow 0.6.7+9513.aef53eb) in 1 sec.
completed applying config
Step #2 Checking system requirements (e.g., ulimits)
/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/bundles/smrtlink-analysisservices-gui/install/smrtlink-analysisservices-gui-release_5.0.1.9579/private/pacbio/smrtlink-analysisservices-gui/bin/check-system-limits: line 7: netstat: command not found
ERROR: The maximum number of open files is too low (currently 1024, at least 8192 recommended).  You can fix this by running 'ulimit -n <LIMIT>'.
services-start: Error! Services not started successfully.
caseywdunn commented 6 years ago

The ulimit settings specified during build are not sticky, and need to be reapplied during run. That fixes the above problem, but I still have another error. Last error is cryptic, but missing netstat could be an issue.

$ /opt/pacbio/smrtlink/admin/bin/services-start
Starting SMRT View Server Node...
Tomcat started.
  SMRT View Server Node started successfully..

Step #1 Attempting to apply-config
Successfully Completed apply-config
Successfully completed running smrtflow.tools.apply_config 0.2.0 (smrtflow 0.6.7+9513.aef53eb) in 1 sec.
completed applying config
Step #2 Checking system requirements (e.g., ulimits)
/opt/pacbio/smrtlink/install/smrtlink-release_5.0.1.9585/bundles/smrtlink-analysisservices-gui/install/smrtlink-analysisservices-gui-release_5.0.1.9579/private/pacbio/smrtlink-analysisservices-gui/bin/check-system-limits: line 7: netstat: command not found
No conflicts with SMRT Link detected.
Successfully completed checking system requirements
Step #3 Checking if db is up and running
Successfully completed check for Postgres database (db is up and running)
Step #4a Checking SMRT Link Analysis services daemon...
Successfully completed checking SMRT Link Analysis services daemon is NOT running.
Step #4b Checking Tomcat GUI webserver daemon...
Successfully completed checking Tomcat GUI webserver daemon is NOT running.
Step #4c Checking WSO2 API Manager daemon...
Successfully completed checking WSO2 API Manager daemon is NOT running.
Completed check of sub-components; SLA, Tomcat and WSO2 API Manager. No sub-component is running
Step #5 Attempting to Start SMRTLink Analysis services daemon...
Successfully started up SMRT Link Analysis services on PID 219
Failed (exit code 1) running smrtflow.tools.get_system_status 0.1.0 (smrtflow 0.6.7+9513.aef53eb) in 35 sec. Status: 500 Internal Server Error
Body: 22820 bytes
services-start: Error! Services not started successfully.
caseywdunn commented 6 years ago

The following suggests that java is needed on the server.

$ docker run --ulimit nofile=500000:500000 -it 79854a82835d bash
smrtanalysis@dd1ff3a8d6b1:/$ curl http://smrtlinkhost:9091/status
curl: (6) Could not resolve host: smrtlinkhost
smrtanalysis@dd1ff3a8d6b1:/$ curl http://localhost:9091/status
curl: (7) Failed to connect to localhost port 9091: Connection refused
smrtanalysis@dd1ff3a8d6b1:/$ /opt/pacbio/smrtlink/admin/bin/services-start
Starting SMRT View Server Node...
Tomcat started.
  SMRT View Server Node started successfully..

Step #1 Attempting to apply-config
Successfully Completed apply-config
Successfully completed running smrtflow.tools.apply_config 0.2.0 (smrtflow 0.6.7+9513.aef53eb) in 1 sec.
completed applying config
Step #2 Checking system requirements (e.g., ulimits)
No conflicts with SMRT Link detected.
Successfully completed checking system requirements
Step #3 Checking if db is up and running
Successfully completed check for Postgres database (db is up and running)
Step #4a Checking SMRT Link Analysis services daemon...
Successfully completed checking SMRT Link Analysis services daemon is NOT running.
Step #4b Checking Tomcat GUI webserver daemon...
Successfully completed checking Tomcat GUI webserver daemon is NOT running.
Step #4c Checking WSO2 API Manager daemon...
Successfully completed checking WSO2 API Manager daemon is NOT running.
Completed check of sub-components; SLA, Tomcat and WSO2 API Manager. No sub-component is running
Step #5 Attempting to Start SMRTLink Analysis services daemon...
Successfully started up SMRT Link Analysis services on PID 226
Failed (exit code 1) running smrtflow.tools.get_system_status 0.1.0 (smrtflow 0.6.7+9513.aef53eb) in 34 sec. Status: 500 Internal Server Error
Body: 22820 bytes
services-start: Error! Services not started successfully.
smrtanalysis@dd1ff3a8d6b1:/$ curl http://localhost:9091/status
{
  "httpCode": 500,
  "message": "requirement failed\njava.lang.IllegalArgumentException: requirement failed\n\tat scala.Predef$.require(Predef.scala:212)\n\tat spray.json.BasicFormats$StringJsonFormat$.write(BasicFormats.scala:121)\n\tat spray.json.BasicFormats$StringJsonFormat$.write(BasicFormats.scala:119)\n\tat spray.json.ProductFormats$class.productElement2Field(ProductFormats.scala:46)\n\tat com.pacbio.common.models.PacBioJsonProtocol$.productElement2Field(JsonProtocols.scala:146)\n\tat spray.json.ProductFormatsInstances$$anon$6.write(ProductFormatsInstances.scala:155)\n\tat spray.json.ProductFormatsInstances$$anon$6.write(ProductFormatsInstances.scala:146)\n\tat spray.httpx.SprayJsonSupport$$anonfun$sprayJsonMarshaller$1.apply(SprayJsonSupport.scala:43)\n\tat spray.httpx.SprayJsonSupport$$anonfun$sprayJsonMarshaller$1.apply(SprayJsonSupport.scala:42)\n\tat spray.httpx.marshalling.Marshaller$MarshallerDelegation$$anonfun$apply$1.apply(Marshaller.scala:58)\n\tat spray.httpx.marshalling.Marshaller$MarshallerDelegation$$anonfun$apply$1.apply(Marshaller.scala:58)\n\tat spray.httpx.marshalling.Marshaller$MarshallerDelegation$$anonfun$apply$2.apply(Marshaller.scala:61)\n\tat spray.httpx.marshalling.Marshaller$MarshallerDelegation$$anonfun$apply$2.apply(Marshaller.scala:60)\n\tat spray.httpx.marshalling.Marshaller$$anon$2.apply(Marshaller.scala:47)\n\tat spray.httpx.marshalling.BasicToResponseMarshallers$$anon$1.apply(BasicToResponseMarshallers.scala:35)\n\tat spray.httpx.marshalling.BasicToResponseMarshallers$$anon$1.apply(BasicToResponseMarshallers.scala:22)\n\tat spray.httpx.marshalling.ToResponseMarshaller$$anonfun$compose$1.apply(Marshaller.scala:69)\n\tat spray.httpx.marshalling.ToResponseMarshaller$$anonfun$compose$1.apply(Marshaller.scala:69)\n\tat spray.httpx.marshalling.ToResponseMarshaller$$anon$3.apply(Marshaller.scala:81)\n\tat spray.httpx.marshalling.ToResponseMarshallable$$anon$6.marshal(Marshaller.scala:141)\n\tat spray.httpx.marshalling.ToResponseMarshallable$$anon$7.apply(Marshaller.scala:145)\n\tat spray.httpx.marshalling.ToResponseMarshallable$$anon$7.apply(Marshaller.scala:144)\n\tat spray.routing.RequestContext.complete(RequestContext.scala:237)\n\tat spray.routing.directives.RouteDirectives$$anonfun$complete$1$$anon$3.apply(RouteDirectives.scala:49)\n\tat spray.routing.directives.RouteDirectives$$anonfun$complete$1$$anon$3.apply(RouteDirectives.scala:48)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:32)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:31)\n\tat spray.routing.RequestContext$$anonfun$withRejectionHandling$1.applyOrElse(RequestContext.scala:130)\n\tat scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36)\n\tat spray.routing.RequestContext$$anon$1.handle(RequestContext.scala:84)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext$$anon$3.handle(RequestContext.scala:102)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext$$anon$3.handle(RequestContext.scala:102)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext.reject(RequestContext.scala:202)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:63)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:62)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:32)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:31)\n\tat spray.routing.RequestContext$$anonfun$withRejectionHandling$1.applyOrElse(RequestContext.scala:130)\n\tat scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36)\n\tat spray.routing.RequestContext$$anon$1.handle(RequestContext.scala:84)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext.reject(RequestContext.scala:202)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:63)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:62)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:32)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:31)\n\tat spray.routing.RequestContext$$anonfun$withRejectionHandling$1.applyOrElse(RequestContext.scala:130)\n\tat scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36)\n\tat spray.routing.RequestContext$$anon$1.handle(RequestContext.scala:84)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext$$anon$3.handle(RequestContext.scala:102)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext$$anon$3.handle(RequestContext.scala:102)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext.reject(RequestContext.scala:202)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:63)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:62)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:32)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:31)\n\tat spray.routing.RequestContext$$anonfun$withRejectionHandling$1.applyOrElse(RequestContext.scala:130)\n\tat scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36)\n\tat spray.routing.RequestContext$$anon$1.handle(RequestContext.scala:84)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext.reject(RequestContext.scala:202)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:63)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:62)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:32)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:31)\n\tat spray.routing.RequestContext$$anonfun$withRejectionHandling$1.applyOrElse(RequestContext.scala:130)\n\tat scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36)\n\tat spray.routing.RequestContext$$anon$1.handle(RequestContext.scala:84)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext$$anon$3.handle(RequestContext.scala:102)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext$$anon$3.handle(RequestContext.scala:102)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext.reject(RequestContext.scala:202)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:63)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:62)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:32)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:31)\n\tat spray.routing.RequestContext$$anonfun$withRejectionHandling$1.applyOrElse(RequestContext.scala:130)\n\tat scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36)\n\tat spray.routing.RequestContext$$anon$1.handle(RequestContext.scala:84)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext.reject(RequestContext.scala:202)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:63)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:62)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:32)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:31)\n\tat spray.routing.RequestContext$$anonfun$withRejectionHandling$1.applyOrElse(RequestContext.scala:130)\n\tat scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36)\n\tat spray.routing.RequestContext$$anon$1.handle(RequestContext.scala:84)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext$$anon$1.handle(RequestContext.scala:84)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext$$anon$3.handle(RequestContext.scala:102)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext$$anon$3.handle(RequestContext.scala:102)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext.reject(RequestContext.scala:202)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:63)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:62)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:32)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1$$anonfun$apply$1.apply(RouteConcatenation.scala:31)\n\tat spray.routing.RequestContext$$anonfun$withRejectionHandling$1.applyOrElse(RequestContext.scala:130)\n\tat scala.runtime.AbstractPartialFunction.apply(AbstractPartialFunction.scala:36)\n\tat spray.routing.RequestContext$$anon$1.handle(RequestContext.scala:84)\n\tat akka.spray.UnregisteredActorRefBase.$bang(UnregisteredActorRefBase.scala:72)\n\tat spray.routing.RequestContext.reject(RequestContext.scala:202)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:63)\n\tat spray.routing.directives.RouteDirectives$$anon$5.apply(RouteDirectives.scala:62)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:30)\n\tat spray.routing.RouteConcatenation$RouteConcatenation$$anonfun$$tilde$1.apply(RouteConcatenation.scala:29)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.Directive$$anon$9$$anonfun$happly$6$$anonfun$apply$8$$anonfun$apply$9.apply(Directive.scala:102)\n\tat spray.routing.Directive$$anon$9$$anonfun$happly$6$$anonfun$apply$8$$anonfun$apply$9.apply(Directive.scala:102)\n\tat spray.routing.Directive$$anon$9$$anonfun$happly$6$$anonfun$apply$8$$anonfun$apply$9.apply(Directive.scala:102)\n\tat spray.routing.Directive$$anon$9$$anonfun$happly$6$$anonfun$apply$8$$anonfun$apply$9.apply(Directive.scala:102)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.directives.BasicDirectives$$anon$3$$anonfun$happly$1.apply(BasicDirectives.scala:92)\n\tat spray.routing.Directive$$anon$9$$anonfun$happly$6.apply(Directive.scala:102)\n\tat spray.routing.Directive$$anon$9$$anonfun$happly$6.apply(Directive.scala:100)\n\tat spray.routing.Directive$$anon$9$$anonfun$happly$6.apply(Directive.scala:102)\n\tat spray.routing.Directive$$anon$9$$anonfun$happly$6.apply(Directive.scala:100)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.BasicDirectives$$anonfun$mapRequestContext$1$$anonfun$apply$1.apply(BasicDirectives.scala:30)\n\tat spray.routing.directives.ExecutionDirectives$$anonfun$handleExceptions$1$$anonfun$apply$4.apply(ExecutionDirectives.scala:35)\n\tat spray.routing.directives.ExecutionDirectives$$anonfun$handleExceptions$1$$anonfun$apply$4.apply(ExecutionDirectives.scala:33)\n\tat spray.routing.HttpServiceBase$class.runSealedRoute$1(HttpService.scala:36)\n\tat spray.routing.HttpServiceBase$$anonfun$runRoute$1.applyOrElse(HttpService.scala:46)\n\tat akka.actor.Actor$class.aroundReceive(Actor.scala:467)\n\tat com.pacbio.common.services.package$RoutedHttpService.aroundReceive(package.scala:188)\n\tat akka.actor.ActorCell.receiveMessage(ActorCell.scala:516)\n\tat akka.actor.ActorCell.invoke(ActorCell.scala:487)\n\tat akka.dispatch.Mailbox.processMailbox(Mailbox.scala:238)\n\tat akka.dispatch.Mailbox.run(Mailbox.scala:220)\n\tat akka.dispatch.ForkJoinExecutorConfigurator$AkkaForkJoinTask.exec(AbstractDispatcher.scala:397)\n\tat scala.concurrent.forkjoin.ForkJoinTask.doExec(ForkJoinTask.java:260)\n\tat scala.concurrent.forkjoin.ForkJoinPool$WorkQueue.runTask(ForkJoinPool.java:1339)\n\tat scala.concurrent.forkjoin.ForkJoinPool.runWorker(ForkJoinPool.java:1979)\n\tat scala.concurrent.forkjoin.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:107)\n",
  "errorType": "Internal Server Error"
} 
caseywdunn commented 6 years ago

Get same outcome after installing java.

caseywdunn commented 6 years ago

Installations instructions state "A 64-bit Linux host with a libc version greater than 2.5" is required, but glibc only available up to 2.26. https://www.gnu.org/software/libc/

tangboyun commented 5 years ago

Get same outcome after installing java.

Hi, I come across the same 'Status: 500 Internal Server Error ' error and fould that the 'USER' must be set before running 'service-start'. You can try: USER=$SMRT_USER $SMRT_ROOT/admin/bin/services-start

Installing Java is not necessary as the SMRT Link has an embedded one.

ylock commented 5 years ago

hi ,when i start smrtlink image and also do the port mapping ,docker ps command show like this: 3d8d11bb4a5d paulbsch/app-pacbio-smrtlink:latest "/bin/bash" 11 days ago Up 11 days 0.0.0.0:32780->9090/tcp, 0.0.0.0:32779->9091/tcp, 0.0.0.0:32778->9092/tcp, 0.0.0.0:32777->9093/tcp, 0.0.0.0:32776->9094/tcp, 0.0.0.0:32775->9095/tcp flamboyant_hypatia

but when i type the address like this http://192.38.192.41:32780 ,the address redirect to https://jarvice.localdomain:8243/sl/ ,so i do not konw how to deal with this.

snipaste_2019-01-21_10-10-28

can anyone help me ?