Skip to content

Commit f027691

Browse files
authored
Merge pull request #10 from JDsnyke/test
Updated script, README and added extras
2 parents 8437aff + d91f227 commit f027691

13 files changed

Lines changed: 373 additions & 4 deletions

File tree

README.md

Lines changed: 67 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ An all in one Docker stack for installing bitcoin-core, electrs, their relevant
99
- [Getting Started](#getting-started)
1010
- [Prerequisites](#prerequisites)
1111
- [Installation](#installation)
12+
- [Installation on Synology NAS](#installation-on-synology-nas)
1213
- [Updates](#updates)
1314
- [Switching the Mempool Explorer](#switching-the-mempool-explorer)
1415
- [Lightning Node](#lightning-node)
@@ -136,6 +137,64 @@ STACK_TOR_PASSWORD="yourtorpasswordd"
136137
./stop.sh
137138
```
138139

140+
### Installation on Synology NAS
141+
142+
> [!CAUTION]
143+
> Due to issues with Synology, Docker and user permissions, the only way this works is to be run as 'root'.
144+
145+
1. SSH into the server using your credentials.
146+
147+
```bash
148+
ssh user@synology.local
149+
```
150+
151+
2. Install the dependencies if you haven't already. For Synology this would be `Container Manager`, `Python` and `Git` (using the [SynoComunity](https://synocommunity.com) repo) through the package manager on the web dashboard.
152+
153+
3. Navigate to your docker container folder on your terminal.
154+
155+
```bash
156+
cd example_docker_folder
157+
```
158+
159+
4. Clone this repository.
160+
161+
```bash
162+
git clone https://github.com/JDsnyke/crypto.git
163+
```
164+
165+
6. Go into the new `crypto` folder, and update the usernames / passwords on the `start.sh` file as needed.
166+
167+
> [!TIP]
168+
> Use the `Text Editor` in the web interface to edit files and values as needed!
169+
170+
7. Edit the `docker-bitcoin.yml` file in the `compose` folder as below, and save.
171+
172+
From,
173+
174+
```yaml
175+
volumes:
176+
- "../volumes/bitcoin/node:/data/.bitcoin"
177+
```
178+
179+
To,
180+
181+
```yaml
182+
volumes:
183+
- "../volumes/bitcoin/node:/root/.bitcoin"
184+
```
185+
186+
7. In the terminal, run the `start.sh` script. Enter your account password when prompted.
187+
188+
```bash
189+
sudo bash start.sh
190+
```
191+
192+
8. Stop the stack using the `stop.sh` script. Enter your account password when prompted.
193+
194+
```bash
195+
sudo bash stop.sh
196+
```
197+
139198
### Updates
140199

141200
1. Check for updates using the `start.sh` script argument.
@@ -196,11 +255,17 @@ STACK_RUN_LIGHTNING_SERVER="True" # From False
196255
I am working on adding additional containers to the script. You will be able to toggle what you want!
197256

198257
> [!CAUTION]
199-
> I will not provide any support for these containers.
258+
> I will not provide any support for these containers. Please refer to the original providers!
200259

201260
Containers available:
202261

203-
- [Ordinals](https://apps.umbrel.com/app/ordinals). `Untested`
262+
- [Ordinals](https://apps.umbrel.com/app/ordinals). `Tested`
263+
- [Adguard](https://apps.umbrel.com/app/adguard-home). `Untested`
264+
- [Nostr Wallet Connect](https://apps.umbrel.com/app/alby-nostr-wallet-connect). `Untested`
265+
- [Back That Mac](https://apps.umbrel.com/app/back-that-mac-up). `Untested`
266+
- [Llama GPT](https://apps.umbrel.com/app/llama-gpt). `Untested`
267+
- [Lightning Terminal](https://apps.umbrel.com/app/lightning-terminal). `Untested`
268+
- [My Speed](https://apps.umbrel.com/app/myspeed). `Untested`
204269

205270
## License
206271

compose/docker-extras.yml

Lines changed: 158 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,3 +24,161 @@ services:
2424
networks:
2525
default:
2626
ipv4_address: ${APP_EXTRAS_ORDINALS_IP}
27+
adguard:
28+
container_name: adguard
29+
image: adguard/adguardhome:v0.107.50
30+
command:
31+
[
32+
"--no-check-update",
33+
"-c",
34+
"/opt/adguardhome/conf/AdGuardHome.yaml",
35+
"-w",
36+
"/opt/adguardhome/work",
37+
"--web-addr",
38+
"0.0.0.0:{APP_EXTRAS_ADGUARD_PORT}",
39+
]
40+
restart: on-failure
41+
network_mode: host
42+
volumes:
43+
- "../volumes/adguard/work:/opt/adguardhome/work"
44+
- "../volumes/adguard/conf:/opt/adguardhome/conf"
45+
cap_add:
46+
- NET_ADMIN
47+
networks:
48+
default:
49+
ipv4_address: ${APP_EXTRAS_ADGUARD_IP}
50+
nostr_wallet_connect:
51+
container_name: nostr_wallet_connect
52+
image: ghcr.io/getalby/nostr-wallet-connect:0.4.2
53+
restart: on-failure
54+
ports:
55+
- "${APP_EXTRAS_NOSTR_WALLET_CONNECT_PORT}:${APP_EXTRAS_NOSTR_WALLET_CONNECT_PORT}"
56+
stop_grace_period: 1m
57+
volumes:
58+
- "../volumes/nostr_wallet_connect:/data"
59+
- "../volumes/lightning/lnd:/lnd:ro"
60+
environment:
61+
LN_BACKEND_TYPE: "LND"
62+
LND_ADDRESS: ${APP_LIGHTNING_NODE_IP}:${APP_LIGHTNING_NODE_GRPC_PORT}
63+
LND_CERT_FILE: "/lnd/tls.cert"
64+
LND_MACAROON_FILE: "/lnd/data/chain/bitcoin/${APP_CRYPTO_NETWORK}/admin.macaroon"
65+
DATABASE_URI: "/data/nostr-wallet-connect.db"
66+
COOKIE_SECRET: "666"
67+
PORT: "${APP_EXTRAS_NOSTR_WALLET_CONNECT_PORT}"
68+
networks:
69+
default:
70+
ipv4_address: ${APP_EXTRAS_NOSTR_WALLET_CONNECT_IP}
71+
back_that_mac:
72+
container_name: back_that_mac
73+
image: getumbrel/umbrel-back-that-mac-up:1.0.1
74+
restart: on-failure
75+
ports:
76+
- "${APP_EXTRAS_BACK_THAT_MAC_PORT}:80"
77+
volumes:
78+
- "../volumes/back_that_mac/gui:/timemachine"
79+
environment:
80+
TIME_MACHINE_DIR: "/timemachine"
81+
networks:
82+
default:
83+
ipv4_address: ${APP_EXTRAS_BACK_THAT_MAC_IP}
84+
timemachine:
85+
container_name: timemachine
86+
image: mbentley/timemachine:smb-20240606
87+
hostname: ${DEVICE_DOMAIN_NAME}
88+
restart: unless-stopped
89+
ports:
90+
- "137:137"
91+
- "138:138"
92+
- "139:139"
93+
- "445:445"
94+
volumes:
95+
- "../volumes/back_that_mac/opt_timemachine:/opt/timemachine"
96+
- "../volumes/back_that_mac/var_lib_samba:/var/lib/samba"
97+
- "../volumes/back_that_mac/var_cache_samba:/var/cache/samba"
98+
- "../volumes/back_that_mac/run_samba:/run/samba"
99+
environment:
100+
ADVERTISED_HOSTNAME: "${DEVICE_DOMAIN_NAME}"
101+
CUSTOM_SMB_CONF: "false"
102+
CUSTOM_USER: "false"
103+
DEBUG_LEVEL: "1"
104+
HIDE_SHARES: "no"
105+
EXTERNAL_CONF: ""
106+
MIMIC_MODEL: "TimeCapsule8,119"
107+
TM_USERNAME: "${APP_TIMEMACHINE_USERNAME}"
108+
TM_GROUPNAME: "${APP_TIMEMACHINE_GROUPNAME}"
109+
TM_UID: "${STACK_UID}"
110+
TM_GID: "${STACK_GID}"
111+
PASSWORD: "${APP_TIMEMACHINE_PASSWORD}"
112+
SET_PERMISSIONS: "false"
113+
SHARE_NAME: "${DEVICE_DOMAIN_NAME} - Time Machine"
114+
SMB_INHERIT_PERMISSIONS: "no"
115+
SMB_NFS_ACES: "no"
116+
SMB_METADATA: "stream"
117+
SMB_PORT: "445"
118+
SMB_VFS_OBJECTS: "acl_xattr fruit streams_xattr"
119+
VOLUME_SIZE_LIMIT: "0"
120+
WORKGROUP: "WORKGROUP"
121+
networks:
122+
default:
123+
ipv4_address: ${APP_EXTRAS_TIMEMACHINE_IP}
124+
llama_gpt_api:
125+
container_name: llama_gpt_api
126+
image: ghcr.io/getumbrel/llama-gpt-api:1.0.1
127+
restart: on-failure
128+
environment:
129+
MODEL: "/models/llama-2-7b-chat.bin"
130+
networks:
131+
default:
132+
ipv4_address: ${APP_EXTRAS_LLAMA_GPT_API_IP}
133+
llama_gpt_ui:
134+
container_name: llama_gpt_ui
135+
image: ghcr.io/getumbrel/llama-gpt-ui:1.0.1
136+
restart: on-failure
137+
ports:
138+
- "${APP_EXTRAS_LLAMA_GPT_UI_PORT}:3000"
139+
environment:
140+
- "OPENAI_API_KEY=${APP_OPENAI_API_KEY}"
141+
- "OPENAI_API_HOST=http://${APP_EXTRAS_LLAMA_GPT_API_IP}:8000"
142+
- "DEFAULT_MODEL=/models/llama-2-7b-chat.bin"
143+
- "WAIT_HOSTS=${APP_EXTRAS_LLAMA_GPT_API_IP}:8000"
144+
- "WAIT_TIMEOUT=600"
145+
networks:
146+
default:
147+
ipv4_address: ${APP_EXTRAS_LLAMA_GPT_UI_IP}
148+
lightning_terminal:
149+
container_name: lightning_terminal
150+
image: lightninglabs/lightning-terminal:v0.13.0-alpha
151+
user: "${APP_LND_USER_INFO}"
152+
restart: on-failure
153+
stop_grace_period: 1m
154+
ports:
155+
- "${APP_EXTRAS_LIGHTNING_TERMINAL_PORT}:${APP_EXTRAS_LIGHTNING_TERMINAL_PORT}"
156+
volumes:
157+
- "../volumes/lightning_terminal:/data"
158+
- "../volumes/lightning/lnd:/lnd:ro"
159+
environment:
160+
HOME: "/data"
161+
APP_PASSWORD: "${APP_LIGHTNING_TERMINAL_PASSWORD}"
162+
command:
163+
- --uipassword_env="${APP_LIGHTNING_TERMINAL_PASSWORD}"
164+
- --insecure-httplisten="0.0.0.0:${APP_EXTRAS_LIGHTNING_TERMINAL_PORT}"
165+
- --network="${APP_CRYPTO_NETWORK}"
166+
- --lnd-mode="remote"
167+
- --remote.lnd.rpcserver="${APP_LIGHTNING_NODE_IP}:${APP_LIGHTNING_NODE_GRPC_PORT}"
168+
- --remote.lnd.macaroonpath="/lnd/data/chain/bitcoin/${APP_CRYPTO_NETWORK}/admin.macaroon"
169+
- --remote.lnd.tlscertpath="/lnd/tls.cert"
170+
networks:
171+
default:
172+
ipv4_address: ${APP_EXTRAS_LIGHTNING_TERMINAL_IP}
173+
myspeed:
174+
container_name: myspeed
175+
image: germannewsmaker/myspeed:1.0.9
176+
restart: on-failure
177+
stop_grace_period: 1m
178+
ports:
179+
- "${APP_EXTRAS_MYSPEED_PORT}:5216"
180+
volumes:
181+
- "../volumes/myspeed:/myspeed/data"
182+
networks:
183+
default:
184+
ipv4_address: ${APP_EXTRAS_MYSPEED_IP}

0 commit comments

Comments
 (0)