# Prepackaged

# Running JIPipe on a Linux Server using MobaXterm

This guide explains how to upload and run the prepackaged Linux version of JIPipe on a remote server using **MobaXterm** on Windows.

---

# 1. Download JIPipe

Open the official JIPipe download page:

[https://jipipe.hki-jena.de/download<span aria-hidden="true" class="ms-0.5 inline-block align-middle leading-none"><svg aria-hidden="true" class="block h-[0.75em] w-[0.75em] stroke-current stroke-[0.75]" data-rtl-flip="" height="20" width="20" xmlns="http://www.w3.org/2000/svg"></svg></span>](https://jipipe.hki-jena.de/download?utm_source=chatgpt.com)

Download the **Prepackaged Linux64 ZIP** package.

The prepackaged version already contains Fiji/ImageJ and JIPipe.

Linux instructions are also available here:

[https://applied-systems-biology.github.io/JIPipe-Documentation/prepackaged-jipipe.html#-uj2awg\_7<span aria-hidden="true" class="ms-0.5 inline-block align-middle leading-none"><svg aria-hidden="true" class="block h-[0.75em] w-[0.75em] stroke-current stroke-[0.75]" data-rtl-flip="" height="20" width="20" xmlns="http://www.w3.org/2000/svg"></svg></span>](https://applied-systems-biology.github.io/JIPipe-Documentation/prepackaged-jipipe.html#-uj2awg_7)

---

# 2. Connect to the Server using MobaXterm

1. Open **MobaXterm**
2. Click **Session**
3. Select **SSH**
4. Enter: 
    - **Remote host**: your server hostname or IP
    - **Specify username**: your Linux username
5. Click **OK**

You will now get a Linux terminal inside MobaXterm.

---

# 3. Upload the ZIP File

MobaXterm includes a built-in SFTP file browser on the left side.

## Method 1: Drag and Drop (Recommended)

- Drag the downloaded `JIPipe-*-Prepackaged-Linux64.zip` file into the desired server directory.

Example destination:

```
/opt/jipipe/
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--3"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--4"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>## Method 2: Use SCP Command

You can also upload from the terminal:

```
scp JIPipe-*-Prepackaged-Linux64.zip username@server:/opt/jipipe/
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--5"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--6"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>---

# 4. Unpack the ZIP File

Inside the terminal:

```
cd /opt/jipipe
unzip JIPipe-5.3.0-Prepackaged-Linux64.zip
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--8"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--9"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>This creates the extracted JIPipe directory.

---

# 5. Fix Permissions (Important)

If you get a **Permission denied** error when starting JIPipe, make the launcher executable.

The launcher scripts are located inside the `bin` folder:

```
cd JIPipe/bin
chmod +x ImageJ-linux64
chmod +x jipipe.sh
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--11"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--12"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>You can verify the permissions:

```
ls -l ImageJ-linux64
ls -l jipipe.sh
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--13"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--14"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>---

# 6. Start JIPipe

Start JIPipe using:

```
bash jipipe.sh
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--16"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--17"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>or:

```
./jipipe.sh
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--18"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--19"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>---

# 7. Running JIPipe on Remote Servers

For remote Linux servers, we currently recommend using **MobaXterm X11 forwarding** to display the JIPipe GUI remotely.

MobaXterm automatically provides an X11 server on Windows.

Before connecting:

1. Open **MobaXterm**
2. Go to: 
    - **Settings → X11**
3. Ensure: 
    - **X11 server is enabled**

When creating the SSH session:

1. Open **Session**
2. Select **SSH**
3. Enable: 
    - **X11-Forwarding**

Then connect normally and start JIPipe:

```
cd /opt/jipipe/JIPipe/bin
bash jipipe.sh
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--21"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--22"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>The JIPipe GUI should appear on your Windows desktop.

---

# 8. Advanced / Untested: Headless Execution using Xvfb

> ⚠️ Advanced / currently untested setup.

If the server has no graphical desktop environment, it may be possible to run JIPipe using a virtual display with `Xvfb`.

Install:

```
sudo apt install xvfb
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--24"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--25"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>Run:

```
xvfb-run bash jipipe.sh
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--26"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--27"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>This setup has not been fully tested with JIPipe workflows.

---

# 9. Keep JIPipe Running after Disconnecting

Use `screen`:

```
screen -S jipipe
cd /opt/jipipe/JIPipe/bin
bash jipipe.sh
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--29"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class=""><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--30"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>Detach from the session:

```
Ctrl+A then D
```

<div class="relative w-full mt-4 mb-1" id="bkmrk--31"><div class=""><div class="relative"><div class="h-full min-h-0 min-w-0"><div class="h-full min-h-0 min-w-0"><div class="border border-token-border-light border-radius-3xl corner-superellipse/1.1 rounded-3xl"><div class="h-full w-full border-radius-3xl bg-token-bg-elevated-secondary corner-superellipse/1.1 overflow-clip rounded-3xl lxnfua_clipPathFallback"><div class="relative"><div class="pe-11 pt-3"><div class="relative z-0 flex max-w-full"><div class="q9tKkq_viewer cm-editor z-10 light:cm-light dark:cm-light flex h-full w-full flex-col items-stretch ͼs ͼ16" dir="ltr" id="bkmrk--32"><div class="cm-scroller"></div></div></div></div></div></div></div></div></div><div class=""><div class="">  
</div></div></div></div></div>Reconnect later:

```
screen -r jipipe
```