<p>You just need to make sure you include the required library files when you install Atria. Since you're not building any software (i.e. using <code>make</code>), the usual way is to simply move the directory under <code>/opt</code> and add the executable(s) to your <code>PATH</code> using the <a href="https://docs.docker.com/engine/reference/builder/#env" rel="nofollow noreferrer"><code>ENV</code></a> keyword. Note that Julia comes bundled with Atria, so all you need is:</p>
<pre><code>FROM ubuntu:22.04

RUN apt-get update &amp;&amp; apt-get install -y \
    bowtie2 \
    openjdk-8-jdk \
    pbzip2 \
    pigz \
    python3.10 \
    python3-pip \
    python3-biopython \
    wget \
    &amp;&amp; apt-get clean \
    &amp;&amp; rm -rf /var/lib/apt/lists/*

# Install RSeQC
RUN pip3 install --no-cache-dir RSeQC

# Install Atria
RUN wget -q https://github.com/cihga39871/Atria/releases/download/v3.1.2/atria-3.1.2-linux.tar.gz \
    &amp;&amp; tar xf atria-3.1.2-linux.tar.gz \
    &amp;&amp; mv atria-3.1.2 /opt/atria

# Install findtail
RUN wget -q https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/findtail/findtail_v1.01 \
    &amp;&amp; chmod +x findtail_v1.01 \
    &amp;&amp; mv findtail_v1.01 /usr/local/bin/findtail 

# Add the Atria executable to the PATH
ENV PATH=&quot;/opt/atria/bin:${PATH}&quot;
</code></pre>

CC BY-SA 4.0
2022-12-31T18:25:49.430Z
Hello @Steve, thank you for that. I'm still a novice (obviously lol) trying to wrap my head around this stuff and I so appreciate your time and effort in helping me out.
pubsurfted
CC BY-SA 4.0
2024-01-30T17:22:20.873Z
I don't understand what modifications to make, as the question and answer are rather sizeable files, can you show a more minimal example?
Cornelius Roemer
CC BY-SA 4.0
2022-12-31T14:13:34.443Z
2022-12-31T14:13:34.443Z
Steve
<p>Just to note <code>RUN apt clean</code>  ... is much better performed using <code>&amp;&amp; apt clean</code>, like in @Steve's approach, recommended for complicated reasons.</p>
<p><strong>Suggestion</strong>: what about using the official Julia Docker as the base rather than create it from scratch? There isn't a Ubuntu Julia but there is a Debian base.</p>
<pre><code>docker run -it --rm Julia
</code></pre>
<p>or</p>
<pre><code>docker pull julia
</code></pre>
<p>or via a Dockerfile,</p>
<pre><code>FROM Julia:buster
</code></pre>
<p>or</p>
<pre><code>FROM Julia:latest
</code></pre>

CC BY-SA 4.0
2024-01-30T17:20:08.713Z
Doesn't work when you want to layer Julia on top of an existing image that contains a lot of stuff you don't wont to re-layer on the Julia base image
Cornelius Roemer
CC BY-SA 4.0
2022-12-31T16:45:54.957Z
2022-12-31T16:45:54.957Z
M__
<p>I'm trying to build a Dockerfile. It has a tool called Atria that utilizes Julia. Since Ubuntu 22.04 does not have Julia package, I had to resort to installing it. The following is the Dockerfile:</p>
<pre><code>FROM ubuntu:22.04

# Install tzdata
RUN apt-get update &amp;&amp;\
    DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get -y install tzdata

# Install Python, Bowtie2 and Java
RUN apt-get install -y python3.10 python3-pip \ 
    openjdk-8-jdk  \ 
    bowtie2 \ 
    wget

RUN  apt-get install --yes --no-install-recommends \
     zlib1g-dev \
     libbz2-dev \
     liblzma-dev  

# Install RSeQC
RUN pip3 install RSeQC

# Install biopython=1.80
RUN pip3 install biopython

#Install Julia
RUN wget https://julialang-s3.julialang.org/bin/linux/x64/1.8/julia-1.8.1-linux-x86_64.tar.gz &amp;&amp; \
    tar zxvf julia-1.8.1-linux-x86_64.tar.gz &amp;&amp; \
    mv julia-1.8.1/bin/julia /usr/local/bin/julia &amp;&amp; \
    chmod +x /usr/local/bin/julia

RUN /sbin/ldconfig -v

# Install Atria
RUN wget https://github.com/cihga39871/Atria/releases/download/v3.1.2/atria-3.1.2-linux.tar.gz &amp;&amp; \
    tar -zxf atria-3.1.2-linux.tar.gz &amp;&amp; \
    mv atria-3.1.2/bin/atria /usr/local/bin/atria &amp;&amp; \
    chmod +x /usr/local/bin/atria

#Atria dependencies
RUN  apt-get install pigz pbzip2

# Install findtail
 RUN wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/findtail/findtail_v1.01 &amp;&amp; \
     mv findtail_v1.01 /usr/local/bin/findtail_v1.01 &amp;&amp; \
     chmod +x /usr/local/bin/findtail_v1.01 
# Cleanup 
RUN apt clean
</code></pre>
<p>What I have tried so far is :</p>
<ol>
<li><p>Julia v1.6.7 and v1.8.4</p>
</li>
<li><p><code>RUN /sbin/ldconfig -v</code> as suggested <a href="https://itsfoss.com/solve-open-shared-object-file-quick-tip/" rel="nofollow noreferrer">here</a></p>
</li>
</ol>
<p>How to fix it? Should I try to install Julia using PPA?</p>
<p>edit- The error:</p>
<pre><code>root@b0f4b17a7c18:/# atria
/usr/local/bin/julia: error while loading shared libraries: libjulia.so.1: cannot open shared object file: No such file or directory
</code></pre>
<p>It is recognizing the atria command tho.</p>

<docker>
ERR: error while loading shared libraries: libjulia.so.1: cannot open shared object file [Julia] - Ubuntu 22.04
# ERR: error while loading shared libraries: libjulia.so.1: cannot open shared object file [Julia] - Ubuntu 22.04

(Asked by: username_0 on 2022-12-31)

I'm trying to build a Dockerfile. It has a tool called Atria that utilizes Julia. Since Ubuntu 22.04 does not have Julia package, I had to resort to installing it. The following is the Dockerfile:
FROM ubuntu:22.04

# Install tzdata
RUN apt-get update &&\
    DEBIAN_FRONTEND=noninteractive TZ=Etc/UTC apt-get -y install tzdata

# Install Python, Bowtie2 and Java
RUN apt-get install -y python3.10 python3-pip \ 
    openjdk-8-jdk  \ 
    bowtie2 \ 
    wget

RUN  apt-get install --yes --no-install-recommends \
     zlib1g-dev \
     libbz2-dev \
     liblzma-dev  

# Install RSeQC
RUN pip3 install RSeQC

# Install biopython=1.80
RUN pip3 install biopython

#Install Julia
RUN wget https://julialang-s3.julialang.org/bin/linux/x64/1.8/julia-1.8.1-linux-x86_64.tar.gz && \
    tar zxvf julia-1.8.1-linux-x86_64.tar.gz && \
    mv julia-1.8.1/bin/julia /usr/local/bin/julia && \
    chmod +x /usr/local/bin/julia

RUN /sbin/ldconfig -v

# Install Atria
RUN wget https://github.com/cihga39871/Atria/releases/download/v3.1.2/atria-3.1.2-linux.tar.gz && \
    tar -zxf atria-3.1.2-linux.tar.gz && \
    mv atria-3.1.2/bin/atria /usr/local/bin/atria && \
    chmod +x /usr/local/bin/atria

#Atria dependencies
RUN  apt-get install pigz pbzip2

# Install findtail
 RUN wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/findtail/findtail_v1.01 && \
     mv findtail_v1.01 /usr/local/bin/findtail_v1.01 && \
     chmod +x /usr/local/bin/findtail_v1.01 
# Cleanup 
RUN apt clean

What I have tried so far is :

Julia v1.6.7 and v1.8.4

RUN /sbin/ldconfig -v as suggested here


How to fix it? Should I try to install Julia using PPA?
edit- The error:
root@b0f4b17a7c18:/# atria
/usr/local/bin/julia: error while loading shared libraries: libjulia.so.1: cannot open shared object file: No such file or directory

It is recognizing the atria command tho.

**Tags:** docker

---

## 2 answers

### Answer by username_1 on 2022-12-31. Score: 2 | Accepted answer

You just need to make sure you include the required library files when you install Atria. Since you're not building any software (i.e. using make), the usual way is to simply move the directory under /opt and add the executable(s) to your PATH using the ENV keyword. Note that Julia comes bundled with Atria, so all you need is:
FROM ubuntu:22.04

RUN apt-get update && apt-get install -y \
    bowtie2 \
    openjdk-8-jdk \
    pbzip2 \
    pigz \
    python3.10 \
    python3-pip \
    python3-biopython \
    wget \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/*

# Install RSeQC
RUN pip3 install --no-cache-dir RSeQC

# Install Atria
RUN wget -q https://github.com/cihga39871/Atria/releases/download/v3.1.2/atria-3.1.2-linux.tar.gz \
    && tar xf atria-3.1.2-linux.tar.gz \
    && mv atria-3.1.2 /opt/atria

# Install findtail
RUN wget -q https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/findtail/findtail_v1.01 \
    && chmod +x findtail_v1.01 \
    && mv findtail_v1.01 /usr/local/bin/findtail 

# Add the Atria executable to the PATH
ENV PATH="/opt/atria/bin:${PATH}"

> **Comments:**
> **username_0**: Hello @Steve, thank you for that. I'm still a novice (obviously lol) trying to wrap my head around this stuff and I so appreciate your time and effort in helping me out.  
> **username_2**: I don't understand what modifications to make, as the question and answer are rather sizeable files, can you show a more minimal example?  

---

### Answer by username_3 on 2022-12-31. Score: 1

Just to note RUN apt clean  ... is much better performed using && apt clean, like in @Steve's approach, recommended for complicated reasons.
Suggestion: what about using the official Julia Docker as the base rather than create it from scratch? There isn't a Ubuntu Julia but there is a Debian base.
docker run -it --rm Julia

or
docker pull julia

or via a Dockerfile,
FROM Julia:buster

or
FROM Julia:latest

> **Comments:**
> **username_2**: Doesn't work when you want to layer Julia on top of an existing image that contains a lot of stuff you don't wont to re-layer on the Julia base image  

---

