# Synology NAS

## Install Docker

### 1. Open Synology DSM package center > Search "**Docker"** > Install

![Package Center - Search Docker](/files/-MA_arhQc7-Rd5Xkqfj9)

## Enable SSH service

### Enable SSH access

Synology does not provide a terminal interface via the WebUI. So you will need to SSH into Synology from another machine.

To enable SSH on Synology, open `Control Panel` and fine your Connectivity section then click `External Access`

![](/files/-MG6nV9OIezFmujSmCET)

### Go to Terminal & SNMP as shown below. Check Enable SSH service.

![](/files/-MG6ndcJCq6V26lg4ClB)

### Login with SSH

* TIPS: Add `sudo` in the beginning

## Install QLauncher

### Download and install QLauncher

```
### Download QLauncher
sudo wget https://github.com/poseidon-network/qlauncher-linux/releases/latest/download/ql-linux.tar.gz -O app.tar.gz

### Create folder
mkdir qlauncher

### Install file
sudo tar -vxzf app.tar.gz -C ~/qlauncher/
sudo mount --make-rshared /
sudo mount --make-rshared /volume1/
```

## Start QLauncher

### After installation you will also need to start it for getting your device online

```
cd ~/qlauncher
sudo ./qlauncher.sh start
```

### You'll get the following output

```
2020-08-20-11-27-15 Start QLauncherK
2020-08-20-11-27-15 Detect sudo/root user
OK
2020-08-20-11-27-15 Detect docker
OK
2020-08-20-11-27-15 Stop edgecore service
2020-08-20-11-27-15 Start edgecore service
cat: /etc/qlauncher: No such file or directory
2020-08-20-11-27-15 GET HWSN FROM SYSTEM
2020-08-20-11-27-15 Request ID from server: {"hwsn":"19A0PCN607012","os":"synology","machine_type":"x86_64","format":"json"}
```

## Verify Installation Success

* Enter below

  ```
  cd ~/qlauncher
  sudo ./qlauncher.sh check
  ```
* If QLauncher is installed successfully, you will get the following output:

  ```
  {"UTC_TIME":"202004191321",
  "hwsn":"bebxxxxxxxxxxxxx99",
  "qlk_app_version":"0.2.2.0",
  "ota_vmer_user":"coderkk"}
  ```

## Check running Qservices on QLauncher

* Enter below

  ```
  cd ~/qlauncher
  sudo ./qlauncher.sh status
  ```
* You'll get the following output:

  ```
  CONTAINER ID        IMAGE                                                        COMMAND                  CREATED             STATUS              PORTS                      NAMES
  2387bd602a66        docker-registry.poseidon.network/qservice-fluentd            "tini -- /fluentd/en…"   29 seconds ago      Up 28 seconds                                  k8s_fluentd_fluentd-x86-lfmlb_default_a2b75e7a-f5c9-4efe-84d4-3d00d3563521_0
  6a88b9dbbd18        docker-registry.poseidon.network/qservice-v2ray              "sh /v2ray/entrypoin…"   29 seconds ago      Up 28 seconds                                  k8s_v2ray_v2ray-x86-w4hc7_default_b706f5c4-e600-44d8-974f-b3d194e4863f_0
  bedfc617016a        docker-registry.poseidon.network/qlauncher-sysinfo-updater   "/bin/sh -c /app/ent…"   29 seconds ago      Up 28 seconds                                  k8s_sysinfo_sysinfo-x86-x86-sssft_default_285ee6ef-f869-440e-a5f5-ffb6c80ec0dd_0
  b427e06d06da        fab3ec9905aa                                                 "FAHClient --web-all…"   29 seconds ago      Up 28 seconds                                  k8s_folding-at-home_folding-at-home-9ltbs_default_638038aa-3775-4c5f-8579-de8fe3ce82d3_0
  a83554525d93        kubeedge/pause:3.1                                           "/pause"                 31 seconds ago      Up 29 seconds       0.0.0.0:32443->32443/tcp   k8s_POD_v2ray-x86-w4hc7_default_b706f5c4-e600-44d8-974f-b3d194e4863f_0
  74810fc9b0f2        kubeedge/pause:3.1                                           "/pause"                 31 seconds ago      Up 29 seconds                                  k8s_POD_fluentd-x86-lfmlb_default_a2b75e7a-f5c9-4efe-84d4-3d00d3563521_0
  c5a914a393e9        kubeedge/pause:3.1                                           "/pause"                 31 seconds ago      Up 29 seconds                                  k8s_POD_sysinfo-x86-x86-sssft_default_285ee6ef-f869-440e-a5f5-ffb6c80ec0dd_0
  56aa09aad445        kubeedge/pause:3.1                                           "/pause"                 31 seconds ago      Up 29 seconds       0.0.0.0:32448->7396/tcp    k8s_POD_folding-at-home-9ltbs_default_638038aa-3775-4c5f-8579-de8fe3ce82d3_0
  root@ql-linux-test:~/qlauncher#

  ```

## Monitor QLauncher via QQQ App

* Download QQQ App and register your account
  * Download QQQ App on [App Store](https://apps.apple.com/tw/app/qqq-earn-tokens-by-sharing/id1517441531?l=en)
  * Download QQQ App on [Google Play](https://play.google.com/store/apps/details?id=network.poseidon.appqqq)
* Get QR code

  ```
  cd ~/qlauncher
  sudo ./qlauncher.sh bind
  ```
* You will get a page link as shown below, just copy the URL to your browser

  ```
  Please copy and paste URL to your browser: <https://poseidon.network/qlauncher/?sn=beb217fbb4324b7d9959f78c279e6599>
  ```
* Scan the QR code in the page via QQQ app

![](/files/-MG6p0sUjrqZszq4Qyyr)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://poseidon-network.gitbook.io/poseidon-network/master/qlauncher/qlauncher-on-synology-nas.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
