DrSnowbird / protege-docker-x11

protege-docker-X11
Apache License 2.0
5 stars 0 forks source link

Can't start #2

Open GreenfishK opened 2 years ago

GreenfishK commented 2 years ago

I am running protege with following docker-compose.yml file

  protege:
    image: openkbs/protege-docker-x11

And This is the errors I get

.
.
.
13:19:42,271 |-ERROR in ch.qos.logback.core.FileAppender[files] - Failed to create parent directories for [/home/developer/.Protege/logs/protege.log]
protege_1    | 13:19:42,271 |-ERROR in ch.qos.logback.core.FileAppender[files] - openFile(/home/developer/.Protege/logs/protege.log,true) call failed. java.io.FileNotFoundException: /home/developer/.Protege/logs/protege.log (No such file or directory)
.
.
.
protege_1    | Error starting file:/home/developer/Protege-5.5.0/bundles/protege-editor-core.jar 
protege_1    | org.osgi.framework.BundleException: Activator start error in bundle org.protege.editor.core.application [4].
protege_1    |  at org.apache.felix.framework.Felix.activateBundle(Felix.java:2276) ~[org.apache.felix.main.jar:na]
protege_1    |  at org.apache.felix.framework.Felix.startBundle(Felix.java:2144) ~[org.apache.felix.main.jar:na]
protege_1    |  at org.apache.felix.framework.Felix.setActiveStartLevel(Felix.java:1371) ~[org.apache.felix.main.jar:na]
protege_1    |  at org.apache.felix.framework.FrameworkStartLevelImpl.run(FrameworkStartLevelImpl.java:308) [org.apache.felix.main.jar:na]
protege_1    |  at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
protege_1    | Caused by: java.awt.AWTError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
.
.
.
DrSnowbird commented 2 years ago

Check out the X11 issues for helpful information:

Also,

  1. Display X11 is not generic and it is a host-specific setup depending upon your host OS. I only tested Ubuntu (20.04, 18.04) and CentOS. All Linux OS for Host should be working like Ubunut. And, Windows, Mac is a bit tricky.
  2. try to use "./run.sh" since it has some automation: a. Automatically setup needed host folders/directories (create them if not existing - using .env file #VOLUMNE=....") b. It will automatically run "xhost +" to allow your X11 client to connect.
  3. If you want to use docker-compose.yml (instead of the ./run.sh), then you need to a. create needed host directories, e.g.: 'mkdir ./data', "mkdir .Protege", "mkdir ./workspace". b. then, you can use docker-compose since "docker-compose" just can't help to automatically create the needed host's folders for mapping. That's is the reason, "./run.sh" is for simple run and up. And, using docker-compose.yml will demand users to know what and how to setup the needed host directories since it is up to the users do define the folders mapping.