Skip to content

Using jgo within a DockerFile and with conda #87

@tischi

Description

@tischi

@ctrueden first of all thanks a lot for providing this tool. awesome!

As you see from the issue title I am quite ambitious and have some little issues.

Not sure you can help but these are the Docker commands:

ENV JGO_CACHE_DIR=/opt/jgo-cache
WORKDIR /opt
RUN mkdir /opt/jgo-cache && \
  source /opt/conda/etc/profile.d/conda.sh && \
  conda create --yes --name mobie-java -c conda-forge python=3.9 mobie && \
  echo $'#!/usr/bin/env -S bash --noprofile --norc\nsource /opt/conda/etc/profile.d/conda.sh\nconda activate mobie-java\nexport JGO_CACHE_DIR=/opt/jgo-cache\nmobie "$@"' > /usr/local/bin/mobie && \
  chmod +x /usr/local/bin/mobie && \
  chmod 777 $JGO_CACHE_DIR && \
  /usr/local/bin/mobie && \    # <== I am trying to launch mobie once to download all dependencies, this is causing the error
  echo Finished installing mobie && \
  date

And that gives me this error

Traceback (most recent call last):
  File "/opt/conda/envs/mobie-java/bin/mobie", line 10, in <module>
    sys.exit(launch_mobie())
  File "/opt/conda/envs/mobie-java/lib/python3.9/site-packages/mobie/__init__.py", line 17, in launch_mobie
    return jgo.util.main_from_endpoint(
  File "/opt/conda/envs/mobie-java/lib/python3.9/site-packages/jgo/util.py", line 95, in main_from_endpoint
    main(argv=argv)
  File "/opt/conda/envs/mobie-java/lib/python3.9/site-packages/jgo/jgo.py", line 406, in _jgo_main
    completed_process = run(parser, argv=argv, stdout=stdout, stderr=stderr)
  File "/opt/conda/envs/mobie-java/lib/python3.9/site-packages/jgo/jgo.py", line 769, in run
    primary_endpoint, workspace = resolve_dependencies(
  File "/opt/conda/envs/mobie-java/lib/python3.9/site-packages/jgo/jgo.py", line 701, in resolve_dependencies
    link(
  File "/opt/conda/envs/mobie-java/lib/python3.9/site-packages/jgo/jgo.py", line 215, in link
    raise e
  File "/opt/conda/envs/mobie-java/lib/python3.9/site-packages/jgo/jgo.py", line 212, in link
    return link(source=source, link_name=link_name, link_type="hard")
  File "/opt/conda/envs/mobie-java/lib/python3.9/site-packages/jgo/jgo.py", line 207, in link
    return os.link(source, link_name)
FileNotFoundError: [Errno 2] No such file or directory: '/home/jovyan/.m2/repository/org/jruby/joni/joni/2.1.29/joni-2.1.29.jar' -> '/opt/jgo-cache/org.embl.mobie/mobie-viewer-fiji/3.0.12/32da8e8da4470d39be2214f164c889f873609a9e59ff5ff0db64668c96b510b9/joni-2.1.29.jar'
error building image: error building stage: failed to execute command: waiting for process to exit: exit status 1

/home/jovyan is the ~ home dir of that build environment.

If you have any idea what this error could be due to it would be very helpful!

Here again just the error:
FileNotFoundError: [Errno 2] No such file or directory: '/home/jovyan/.m2/repository/org/jruby/joni/joni/2.1.29/joni-2.1.29.jar' -> '/opt/jgo-cache/org.embl.mobie/mobie-viewer-fiji/3.0.12/32da8e8da4470d39be2214f164c889f873609a9e59ff5ff0db64668c96b510b9/joni-2.1.29.jar'

In fact we were not even sure what the -> means in this context.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions