Compare commits

..

2 Commits

Author SHA1 Message Date
817eff6e5f Add new nextcloud 2022-09-30 14:29:14 -04:00
eb47803c72 Add custom nextcloud 2022-09-30 14:28:43 -04:00
329 changed files with 1093 additions and 4194 deletions

View File

@ -104,10 +104,7 @@ version: "3.7"
services:
app_proxy:
environment:
# <app-id>_<web-container-name>_1
# e.g. 'btc-rpc-explorer_web_1'
# Note that the '_1' at the end is needed
APP_HOST: <web-container-dns-name>
APP_HOST: <web-container-ip-address>
APP_PORT: <web-container-port-number>
web:
@ -201,11 +198,11 @@ defaultPassword: ""
The `dependencies` section within the app manifest gives Umbrel a list of app IDs that must be already installed in order for the user to install BTC RPC Explorer and also function.
The `exports.sh` shell script is a simple script to export environmental variables that your `docker-compose.yml` can read. These env. vars. are also accessible when other apps start through their `docker-compose.yml` files. Most applications will not require this feature.
The `exports.sh` shell script is a simple script to export environmental variables that your `docker-compose.yml` can read. These env. vars. are also accessible when other apps start through their `docker-compose.yml` files.
If we (for example) wanted to share BTC RPC Explorer's Address API with other apps; that would look like this:
```sh
export APP_BTC_RPC_EXPLORER_ADDRESS_API="electrumx"
export APP_BTC_RPC_EXPLORER_IP="10.21.21.12"
export APP_BTC_RPC_EXPLORER_PORT="3002"
```
4\. For our app, we'll update `<docker-image>` with `getumbrel/btc-rpc-explorer`, `<tag>` with `v2.0.2`, and `<port>` with `3002`. Since BTC RPC Explorer doesn't need to store any persistent data and doesn't require access to Bitcoin Core's or LND's data directories, we can remove the entire `volumes` block.
@ -222,15 +219,17 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: btc-rpc-explorer_web_1
APP_PORT: 8080
APP_HOST: $APP_BTC_RPC_EXPLORER_IP
APP_PORT: $APP_BTC_RPC_EXPLORER_PORT
web:
image: getumbrel/btc-rpc-explorer:v2.0.2
restart: on-failure
stop_grace_period: 1m
environment:
BTCEXP_PORT: 8080
environment: ...
networks:
default:
ipv4_address: $APP_BTC_RPC_EXPLORER_IP
```
@ -244,16 +243,14 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: btc-rpc-explorer_web_1
APP_PORT: 8080
APP_HOST: $APP_BTC_RPC_EXPLORER_IP
APP_PORT: $APP_BTC_RPC_EXPLORER_PORT
web:
image: getumbrel/btc-rpc-explorer:v2.0.2
restart: on-failure
stop_grace_period: 1m
environment:
PORT: 8080
# Bitcoin Core connection details
BTCEXP_BITCOIND_HOST: $APP_BITCOIN_NODE_IP
BTCEXP_BITCOIND_PORT: $APP_BITCOIN_RPC_PORT
@ -273,6 +270,9 @@ services:
BTCEXP_NO_RATES: "true"
BTCEXP_RPC_ALLOWALL: "false"
BTCEXP_BASIC_AUTH_PASSWORD: ""
networks:
default:
ipv4_address: $APP_BTC_RPC_EXPLORER_IP
```
@ -300,7 +300,8 @@ Once Umbrel has started, the Web UI will be accessible at the IP address of the
```sh
cd umbrel
sudo ./scripts/repo checkout https://github.com/<username>/umbrel-apps.git
sudo ./scripts/repo set https://github.com/<username>/umbrel-apps.git
sudo ./scripts/repo update
```
3\. And finally, it's time to install our app:
@ -316,7 +317,7 @@ That's it! Our BTC RPC Explorer app should now be accessible at http://umbrel-de
Let's commit and push our changes to our forked Umbrel app repo then run:
```sh
sudo ./scripts/repo checkout https://github.com/<username>/umbrel-apps.git
sudo ./scripts/repo update
sudo ./scripts/app update btc-rpc-explorer
```
@ -348,7 +349,8 @@ After the VM has booted, we can verify if the Umbrel dashboard is accessible at
```sh
cd getumbrel/umbrel
sudo ./scripts/repo checkout https://github.com/<username>/umbrel-apps.git
sudo ./scripts/repo set https://github.com/<username>/umbrel-apps.git
sudo ./scripts/repo update
```
4\. And finally, it's time to install our app:
@ -364,7 +366,7 @@ That's it! Our BTC RPC Explorer app should now be accessible at http://umbrel-de
Let's commit and push our changes to our forked Umbrel app repo then run:
```sh
sudo ./scripts/repo checkout https://github.com/<username>/umbrel-apps.git
sudo ./scripts/repo update
sudo ./scripts/app update btc-rpc-explorer
```
@ -383,7 +385,8 @@ ssh umbrel@umbrel.local
2\. Next, we'll switch to the forked remote app repo:
```sh
sudo ./scripts/repo checkout https://github.com/<username>/umbrel-apps.git
sudo ./scripts/repo set https://github.com/<username>/umbrel-apps.git
sudo ./scripts/repo update
```
3\. Once the repo has updated, it's time to test our app:

View File

@ -25,5 +25,3 @@ path: /admin/
deterministicPassword: true
defaultUsername: umbrel
torOnly: false
submitter: Jonathan Zernik
submission: https://github.com/getumbrel/umbrel/pull/1282

View File

@ -1,29 +0,0 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: audiobookshelf_web_1
APP_PORT: 80
PROXY_AUTH_ADD: "false"
web:
image: ghcr.io/advplyr/audiobookshelf:2.2.11@sha256:6a3a3dceeb669b477851ce54d96c2140868e19606b0193ccbb3e98151e5b8e5e
user: 1000:1000
init: true
restart: on-failure
stop_grace_period: 1m
healthcheck:
disable: true
environment:
- CONFIG_PATH=/home/node/config
- METADATA_PATH=/home/node/metadata
- AUDIOBOOKSHELF_UID=1000
- AUDIOBOOKSHELF_GID=1000
volumes:
- ${APP_DATA_DIR}/data/config:/home/node/config
- ${APP_DATA_DIR}/data/metadata:/home/node/metadata
- ${UMBREL_ROOT}/data/storage/downloads/audiobooks:/audiobooks
- ${UMBREL_ROOT}/data/storage/downloads/podcasts:/podcasts

View File

@ -1,16 +0,0 @@
UMBREL_DATA_DIR="${UMBREL_ROOT}/data"
UMBREL_DATA_STORAGE_AUDIOBOOKS_DIR="${UMBREL_DATA_DIR}/storage/downloads/audiobooks"
UMBREL_DATA_STORAGE_PODCASTS_DIR="${UMBREL_DATA_DIR}/storage/downloads/podcasts"
DESIRED_OWNER="1000:1000"
if [[ ! -d "${UMBREL_DATA_STORAGE_AUDIOBOOKS_DIR}" ]]; then
mkdir -p "${UMBREL_DATA_STORAGE_AUDIOBOOKS_DIR}"
chown "${DESIRED_OWNER}" "${UMBREL_DATA_STORAGE_AUDIOBOOKS_DIR}"
fi
if [[ ! -d "${UMBREL_DATA_STORAGE_PODCASTS_DIR}" ]]; then
mkdir -p "${UMBREL_DATA_STORAGE_PODCASTS_DIR}"
chown "${DESIRED_OWNER}" "${UMBREL_DATA_STORAGE_PODCASTS_DIR}"
fi

View File

@ -1,79 +0,0 @@
manifestVersion: 1
id: audiobookshelf
name: Audiobookshelf
tagline: Audiobook and podcast server
category: Media
version: "2.2.11"
port: 13378
description: >-
Features:
- Fully open-source, including the android & iOS app (in beta)
- Stream all audio formats on the fly
- Search and add podcasts to download episodes w/ auto-download
- Multi-user support w/ custom permissions
- Keeps progress per user and syncs across devices
- Auto-detects library updates, no need to re-scan
- Upload books and podcasts w/ bulk upload drag and drop folders
- Backup your metadata + automated daily backups
- Progressive Web App (PWA)
- Chromecast support on the web app and android app
- Fetch metadata and cover art from several sources
- Chapter editor and chapter lookup (using Audnexus API)
- Merge your audio files into a single m4b
- Embed metadata and cover image into your audio files (using Tone)
- Basic ebook support and e-reader (experimental)
Android App (beta)
- Try it out on the Google Play Store
iOS App (early beta)
- Available using Test Flight: https://testflight.apple.com/join/wiic7QIW
developer: advplyr
website: https://audiobookshelf.org
repo: https://github.com/advplyr/audiobookshelf
support: https://discord.gg/pJsjuNCKRq
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
dependencies: []
path: ""
defaultUsername: ""
defaultPassword: ""
releaseNotes: >-
- Audiobookshelf now works with mobile apps (Android & iOS)
Added:
- M4B merge tool advanced options for ffmpeg encoder
Fixed:
- Crash on adding podcast
- Dropdowns hidden in edit modals
- Get libraries API endpoint (bad response payload)
Changed:
- API endpoint for author image allows raw=1 query to get raw image
- More strings translated: french, simplified Chinese, & German
submitter: Jasper
submission: https://github.com/getumbrel/umbrel-apps/pull/302

View File

@ -7,12 +7,9 @@ services:
APP_PORT: 3005
server:
image: getumbrel/umbrel-bitcoin:v0.4.1@sha256:edc0567efeadf30128313308e2dadbfaa1f339ce666579646c3b9353834bb888
image: getumbrel/umbrel-bitcoin:v0.3.0@sha256:115af951d7a4e696603c7468bcb4e119e02fe9c9deb28edb51d2e2d8207cab59
depends_on: [bitcoind]
restart: on-failure
volumes:
- ${APP_DATA_DIR}/data/app:/data # volume to persist advanced settings json
- ${APP_BITCOIN_DATA_DIR}:/bitcoin/.bitcoin # volume to persist umbrel-bitcoin.conf and bitcoin.conf
environment:
PORT: "3005"
BITCOIN_HOST: "${APP_BITCOIN_NODE_IP}"
@ -26,23 +23,14 @@ services:
BITCOIN_P2P_HIDDEN_SERVICE: "${APP_BITCOIN_P2P_HIDDEN_SERVICE}"
BITCOIN_P2P_PORT: "${APP_BITCOIN_P2P_PORT}"
DEVICE_DOMAIN_NAME: "${DEVICE_DOMAIN_NAME}"
BITCOIN_DEFAULT_NETWORK: "${BITCOIN_DEFAULT_NETWORK:-mainnet}"
BITCOIN_INITIALIZE_WITH_CLEARNET_OVER_TOR: "${BITCOIN_INITIALIZE_WITH_CLEARNET_OVER_TOR:-unset}"
BITCOIND_IP: "${APP_BITCOIN_NODE_IP}"
TOR_PROXY_IP: "${APP_BITCOIN_TOR_PROXY_IP}"
TOR_PROXY_PORT: "9050"
TOR_PROXY_CONTROL_PORT: "9051"
TOR_PROXY_CONTROL_PASSWORD: "moneyprintergobrrr"
I2P_DAEMON_IP: "${APP_BITCOIN_I2P_DAEMON_IP}"
I2P_DAEMON_PORT: "7656"
networks:
default:
ipv4_address: $APP_BITCOIN_IP
bitcoind:
image: getumbrel/bitcoind:v24.0.1@sha256:33ff257bd8a24b41bef5b5c3aea1e32ea6dcc08917e24122728687eb393814fa
image: lncm/bitcoind:v23.0@sha256:57317c90d89156a30327fe1b8e51b836e0fd1a8ba13721eb2e75e6b35a570e26
command: "${APP_BITCOIN_COMMAND}"
restart: unless-stopped
restart: on-failure
stop_grace_period: 15m30s
volumes:
- "${APP_BITCOIN_DATA_DIR}:/data/.bitcoin"
@ -52,27 +40,3 @@ services:
networks:
default:
ipv4_address: $APP_BITCOIN_NODE_IP
tor:
image: getumbrel/tor:0.4.7.8@sha256:2ace83f22501f58857fa9b403009f595137fa2e7986c4fda79d82a8119072b6a
user: "1000:1000"
restart: on-failure
volumes:
- ${APP_DATA_DIR}/torrc:/etc/tor/torrc:ro
- ${TOR_DATA_DIR}:/data
environment:
HOME: "/tmp"
networks:
default:
ipv4_address: "${APP_BITCOIN_TOR_PROXY_IP}"
i2pd_daemon:
image: purplei2p/i2pd:release-2.44.0@sha256:d154a599793c393cf9c91f8549ba7ece0bb40e5728e1813aa6dd4c210aa606f6
user: "root"
command: --sam.enabled=true --sam.address=0.0.0.0 --sam.port=7656 --loglevel=error
restart: on-failure
volumes:
- ${APP_DATA_DIR}/data/i2pd:/home/i2pd/data
networks:
default:
ipv4_address: "${APP_BITCOIN_I2P_DAEMON_IP}"

View File

@ -1,7 +1,5 @@
export APP_BITCOIN_IP="10.21.22.2"
export APP_BITCOIN_NODE_IP="10.21.21.8"
export APP_BITCOIN_TOR_PROXY_IP="10.21.22.10"
export APP_BITCOIN_I2P_DAEMON_IP="10.21.22.11"
export APP_BITCOIN_DATA_DIR="${EXPORTS_APP_DIR}/data/bitcoin"
export APP_BITCOIN_RPC_PORT="8332"
@ -15,24 +13,6 @@ export APP_BITCOIN_ZMQ_SEQUENCE_PORT="28335"
BITCOIN_CHAIN="main"
BITCOIN_ENV_FILE="${EXPORTS_APP_DIR}/.env"
{
BITCOIN_APP_CONFIG_FILE="${EXPORTS_APP_DIR}/data/app/bitcoin-config.json"
if [[ -f "${BITCOIN_APP_CONFIG_FILE}" ]]
then
bitcoin_app_network=$(jq -r '.network' "${BITCOIN_APP_CONFIG_FILE}")
case $bitcoin_app_network in
"main")
BITCOIN_NETWORK="mainnet";;
"test")
BITCOIN_NETWORK="testnet";;
"signet")
BITCOIN_NETWORK="signet";;
"regtest")
BITCOIN_NETWORK="regtest";;
esac
fi
} > /dev/null || true
if [[ ! -f "${BITCOIN_ENV_FILE}" ]]; then
if [[ -z "${BITCOIN_NETWORK}" ]]; then
BITCOIN_NETWORK="mainnet"
@ -53,49 +33,35 @@ fi
. "${BITCOIN_ENV_FILE}"
# Make sure we don't persist the original value in .env if we have a more recent
# value from the app config
{
if [[ ! -z ${BITCOIN_NETWORK+x} ]] && [[ "${BITCOIN_NETWORK}" ]] && [[ "${APP_BITCOIN_NETWORK}" ]]
then
APP_BITCOIN_NETWORK="${BITCOIN_NETWORK}"
fi
} > /dev/null || true
if [[ "${APP_BITCOIN_NETWORK}" == "mainnet" ]]; then
BITCOIN_CHAIN="main"
elif [[ "${APP_BITCOIN_NETWORK}" == "testnet" ]]; then
BITCOIN_CHAIN="test"
# export APP_BITCOIN_RPC_PORT="18332"
# export APP_BITCOIN_P2P_PORT="18333"
# export APP_BITCOIN_TOR_PORT="18334"
export APP_BITCOIN_RPC_PORT="18332"
export APP_BITCOIN_P2P_PORT="18333"
export APP_BITCOIN_TOR_PORT="18334"
elif [[ "${APP_BITCOIN_NETWORK}" == "signet" ]]; then
BITCOIN_CHAIN="signet"
# export APP_BITCOIN_RPC_PORT="38332"
# export APP_BITCOIN_P2P_PORT="38333"
# export APP_BITCOIN_TOR_PORT="38334"
export APP_BITCOIN_RPC_PORT="38332"
export APP_BITCOIN_P2P_PORT="38333"
export APP_BITCOIN_TOR_PORT="38334"
elif [[ "${APP_BITCOIN_NETWORK}" == "regtest" ]]; then
BITCOIN_CHAIN="regtest"
# export APP_BITCOIN_RPC_PORT="18443"
# export APP_BITCOIN_P2P_PORT="18444"
# export APP_BITCOIN_TOR_PORT="18445"
export APP_BITCOIN_RPC_PORT="18443"
export APP_BITCOIN_P2P_PORT="18444"
export APP_BITCOIN_TOR_PORT="18445"
else
echo "Warning (${EXPORTS_APP_ID}): Bitcoin Network '${APP_BITCOIN_NETWORK}' is not supported"
fi
export BITCOIN_DEFAULT_NETWORK="${BITCOIN_CHAIN}"
BIN_ARGS=()
# Commenting out options that are replaced by generated config file. We should migrate all these over in a future update.
# BIN_ARGS+=( "-chain=${BITCOIN_CHAIN}" )
# BIN_ARGS+=( "-proxy=${TOR_PROXY_IP}:${TOR_PROXY_PORT}" )
# BIN_ARGS+=( "-listen" )
# BIN_ARGS+=( "-bind=0.0.0.0:${APP_BITCOIN_TOR_PORT}=onion" )
# BIN_ARGS+=( "-bind=${APP_BITCOIN_NODE_IP}" )
# BIN_ARGS+=( "-port=${APP_BITCOIN_P2P_PORT}" )
# BIN_ARGS+=( "-rpcport=${APP_BITCOIN_RPC_PORT}" )
BIN_ARGS+=( "-port=8333" )
BIN_ARGS+=( "-rpcport=8332" )
BIN_ARGS+=( "-chain=${BITCOIN_CHAIN}" )
BIN_ARGS+=( "-proxy=${TOR_PROXY_IP}:${TOR_PROXY_PORT}" )
BIN_ARGS+=( "-listen" )
BIN_ARGS+=( "-bind=0.0.0.0:${APP_BITCOIN_TOR_PORT}=onion" )
BIN_ARGS+=( "-bind=${APP_BITCOIN_NODE_IP}" )
BIN_ARGS+=( "-port=${APP_BITCOIN_P2P_PORT}" )
BIN_ARGS+=( "-rpcport=${APP_BITCOIN_RPC_PORT}" )
BIN_ARGS+=( "-rpcbind=${APP_BITCOIN_NODE_IP}" )
BIN_ARGS+=( "-rpcbind=127.0.0.1" )
BIN_ARGS+=( "-rpcallowip=${NETWORK_IP}/16" )
@ -105,7 +71,7 @@ BIN_ARGS+=( "-zmqpubrawblock=tcp://0.0.0.0:${APP_BITCOIN_ZMQ_RAWBLOCK_PORT}" )
BIN_ARGS+=( "-zmqpubrawtx=tcp://0.0.0.0:${APP_BITCOIN_ZMQ_RAWTX_PORT}" )
BIN_ARGS+=( "-zmqpubhashblock=tcp://0.0.0.0:${APP_BITCOIN_ZMQ_HASHBLOCK_PORT}" )
BIN_ARGS+=( "-zmqpubsequence=tcp://0.0.0.0:${APP_BITCOIN_ZMQ_SEQUENCE_PORT}" )
# BIN_ARGS+=( "-txindex=1" )
BIN_ARGS+=( "-txindex=1" )
BIN_ARGS+=( "-blockfilterindex=1" )
BIN_ARGS+=( "-peerbloomfilters=1" )
BIN_ARGS+=( "-peerblockfilters=1" )
@ -125,25 +91,3 @@ export APP_BITCOIN_NETWORK_ELECTRS=$APP_BITCOIN_NETWORK
if [[ "${APP_BITCOIN_NETWORK_ELECTRS}" = "mainnet" ]]; then
APP_BITCOIN_NETWORK_ELECTRS="bitcoin"
fi
{
# Migrate settings for app updates differently to fresh installs
BITCOIN_INSTALL_EXISTS="false"
BITCOIN_DATA_DIR="${EXPORTS_APP_DIR}/data/bitcoin"
if [[ -d "${BITCOIN_DATA_DIR}/blocks" ]] || [[ -d "${BITCOIN_DATA_DIR}/testnet3/blocks" ]] || [[ -d "${BITCOIN_DATA_DIR}/regtest/blocks" ]]
then
BITCOIN_INSTALL_EXISTS="true"
fi
APP_CONFIG_EXISTS="false"
if [[ -f "${EXPORTS_APP_DIR}/data/app/bitcoin-config.json" ]]
then
APP_CONFIG_EXISTS="true"
fi
if [[ "${BITCOIN_INSTALL_EXISTS}" = "true" ]] && [[ "${APP_CONFIG_EXISTS}" = "false" ]]
then
# This app is not a fresh install, it's being updated, so preserve existing clearnet over Tor setting
export BITCOIN_INITIALIZE_WITH_CLEARNET_OVER_TOR="true"
fi
} || true

View File

@ -1,26 +0,0 @@
#!/usr/bin/env bash
# Delay booting Bitcoin until the RPC and P2P Tor Hidden Services are ready
HIDDEN_SERVICE_FILE="${TOR_DATA_DIR}/app-${APP_ID}-rpc/hostname"
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
exit
fi
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach bitcoind
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach tor
echo "App: ${APP_ID} - Generating Tor Hidden Service..."
for attempt in $(seq 1 100); do
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
echo "App: ${APP_ID} - Hidden service file created successfully!"
break
fi
sleep 0.1
done
if [[ ! -f "${HIDDEN_SERVICE_FILE}" ]]; then
echo "App: ${APP_ID} - Hidden service file wasn't created"
fi

View File

@ -1,9 +1,3 @@
SocksPort 0.0.0.0:9050
ControlPort 0.0.0.0:9051
CookieAuthentication 1
CookieAuthFileGroupReadable 1
HashedControlPassword 16:39AF5EEFA4FC1D986022FDFB13663669FE50FB6DE9A3B4FE4FC7D82010 # moneyprintergobrrr
# Bitcoin Core P2P Hidden Service
HiddenServiceDir /data/app-$APP_ID-p2p
HiddenServicePort $APP_BITCOIN_P2P_PORT $APP_BITCOIN_NODE_IP:$APP_BITCOIN_TOR_PORT
@ -11,3 +5,7 @@ HiddenServicePort $APP_BITCOIN_P2P_PORT $APP_BITCOIN_NODE_IP:$APP_BITCOIN_TOR_PO
# Bitcoin Core RPC Hidden Service
HiddenServiceDir /data/app-$APP_ID-rpc
HiddenServicePort $APP_BITCOIN_RPC_PORT $APP_BITCOIN_NODE_IP:$APP_BITCOIN_RPC_PORT
# Bitcoin Core Frontend Hidden Service
HiddenServiceDir /data/app-$APP_ID
HiddenServicePort 80 $APP_PROXY_HOSTNAME:$APP_PROXY_PORT

View File

@ -1,8 +1,8 @@
manifestVersion: 1.1
manifestVersion: 1
id: bitcoin
category: Finance
name: Bitcoin Node
version: "24.0.1-2"
version: "23.0"
tagline: Run your personal node powered by Bitcoin Core
description: >-
Run your Bitcoin node and independently store and validate
@ -31,28 +31,31 @@ gallery:
- 2.jpg
- 3.jpg
- 4.jpg
- 5.jpg
path: ""
defaultPassword: ""
releaseNotes: >-
Advanced settings are here!
- P2P and network changes
- Fee estimation changes
- Toggle Tor, Clearnet, and I2P for outgoing connections, and enable Mempool Full RBF.
- Rescan startup parameter removed
- Tracepoints and Userspace, Statically Defined Tracing support
- Enable incoming connections to run a listening node and help others sync their node.
- Updated RPCs
- New RPCs
- Switch networks between mainnet, testnet, regtest, and signet.
- File changes
- Updated settings
- Setting up a new node? Speed up your initial sync by increasing the cache size.
- Tools and Utilities changes
- GUI changes
- Finally, you can run a pruned node, which allows you to delete old blocks that are not relevant to you to save on storage space.
- Low-level changes (RPC and tests)
- Full details here: https://bitcoincore.org/en/releases/23.0/
Note: This update fixes a bug with pruning in the previous 24.0.1 update.
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel/commit/b0ba869953d024595bac84b8987de34aee561392
- Bugfix: Use specific Tor port for peers from Tor network

View File

@ -3,7 +3,7 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: bitfeed_web_1
APP_HOST: $APP_BITFEED_IP
APP_PORT: 80
web:
@ -14,8 +14,11 @@ services:
- "api"
environment:
TARGET: "umbrel"
BACKEND_HOST: bitfeed_api_1
BACKEND_PORT: 8315
BACKEND_HOST: "$APP_BITFEED_API_IP"
BACKEND_PORT: "$APP_BITFEED_API_PORT"
networks:
default:
ipv4_address: $APP_BITFEED_IP
api:
image: ghcr.io/bitfeed-project/bitfeed-server:v2.3.4@sha256:e38a2e07389cf6d0c519e856291e535fdd10a1e50143d528c82bfe0baf06894f
@ -23,7 +26,7 @@ services:
restart: on-failure
stop_grace_period: 1m
environment:
PORT: 8315
PORT: "$APP_BITFEED_API_PORT"
BITCOIN_HOST: "$APP_BITCOIN_NODE_IP"
BITCOIN_ZMQ_RAWTX_PORT: "$APP_BITCOIN_ZMQ_RAWTX_PORT"
BITCOIN_ZMQ_RAWBLOCK_PORT: "$APP_BITCOIN_ZMQ_RAWBLOCK_PORT"
@ -37,3 +40,6 @@ services:
LOG_LEVEL: "info"
volumes:
- ${APP_DATA_DIR}/data:/app/data
networks:
default:
ipv4_address: $APP_BITFEED_API_IP

4
bitfeed/exports.sh Normal file
View File

@ -0,0 +1,4 @@
export APP_BITFEED_IP="10.21.21.68"
export APP_BITFEED_PORT="8314"
export APP_BITFEED_API_IP="10.21.21.69"
export APP_BITFEED_API_PORT="8315"

View File

@ -27,5 +27,3 @@ gallery:
path: ""
defaultUsername: ""
defaultPassword: ""
submitter: Mononaut
submission: https://github.com/getumbrel/umbrel/pull/1202

View File

@ -3,8 +3,8 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: bleskomat-server_web_1
APP_PORT: 3333
APP_HOST: $APP_BLESKOMAT_SERVER_IP
APP_PORT: $APP_BLESKOMAT_SERVER_PORT
PROXY_AUTH_ADD: "false"
db:
@ -14,6 +14,9 @@ services:
stop_grace_period: 1m
volumes:
- $APP_DATA_DIR/data/db:/var/lib/postgresql/data
networks:
default:
ipv4_address: $APP_BLESKOMAT_SERVER_DB_IP
environment:
- POSTGRES_USER=bleskomat_server
- POSTGRES_DB=bleskomat_server
@ -32,13 +35,17 @@ services:
environment:
DEBUG: "bleskomat-server*,lnurl*"
BLESKOMAT_SERVER_HOST: "0.0.0.0"
BLESKOMAT_SERVER_PORT: 3333
BLESKOMAT_SERVER_PORT: "$APP_BLESKOMAT_SERVER_PORT"
BLESKOMAT_SERVER_URL: "$APP_HIDDEN_SERVICE"
BLESKOMAT_SERVER_ENDPOINT: "/u"
BLESKOMAT_SERVER_AUTH_API_KEYS: '[]'
BLESKOMAT_SERVER_LIGHTNING: '{"backend":"lnd","config":{"cert":"/lnd/tls.cert","protocol":"https","hostname":"$APP_LIGHTNING_NODE_IP:$APP_LIGHTNING_NODE_REST_PORT","macaroon":"/lnd/data/chain/bitcoin/$APP_BITCOIN_NETWORK/admin.macaroon"}}'
BLESKOMAT_SERVER_STORE: '{"backend":"knex","config":{"client":"postgres","connection":{"host":"bleskomat-server_db_1","port":5432,"user":"bleskomat_server","password":"moneyprintergobrrr","database":"bleskomat_server"}}}'
BLESKOMAT_SERVER_STORE: '{"backend":"knex","config":{"client":"postgres","connection":{"host":"$APP_BLESKOMAT_SERVER_DB_IP","port":5432,"user":"bleskomat_server","password":"moneyprintergobrrr","database":"bleskomat_server"}}}'
BLESKOMAT_SERVER_COINRATES_DEFAULTS_PROVIDER: "coinbase"
BLESKOMAT_SERVER_ADMIN_WEB: "true"
BLESKOMAT_SERVER_ADMIN_PASSWORD_PLAINTEXT: "$APP_PASSWORD"
BLESKOMAT_SERVER_ENV_FILEPATH: "./data/.env"
networks:
default:
ipv4_address: $APP_BLESKOMAT_SERVER_IP

View File

@ -0,0 +1,3 @@
export APP_BLESKOMAT_SERVER_PORT="3333"
export APP_BLESKOMAT_SERVER_IP="10.21.21.85"
export APP_BLESKOMAT_SERVER_DB_IP="10.21.21.86"

View File

@ -23,5 +23,3 @@ gallery:
path: ""
deterministicPassword: true
torOnly: false
submitter: Charles Hill
submission: https://github.com/getumbrel/umbrel/pull/1175

View File

@ -3,8 +3,8 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: bluewallet_lndhub_1
APP_PORT: 3008
APP_HOST: $APP_BLUEWALLET_LNDHUB_IP
APP_PORT: $APP_BLUEWALLET_LNDHUB_PORT
PROXY_AUTH_ADD: "false"
redis:
@ -16,6 +16,9 @@ services:
init: true
volumes:
- "${APP_DATA_DIR}/data/redis:/data"
networks:
default:
ipv4_address: "${APP_BLUEWALLET_REDIS_IP}"
lndhub:
image: "bluewalletorganization/lndhub:v1.4.1@sha256:db673a8d360982984d05f97303e26dc0e5a3eea36ba54d0abdae5bbbeef31d3a"
@ -27,8 +30,11 @@ services:
volumes:
- "${APP_LIGHTNING_NODE_DATA_DIR}:/lnd:ro"
environment:
PORT: 3008
PORT: "${APP_BLUEWALLET_LNDHUB_PORT}"
TOR_URL: "${APP_HIDDEN_SERVICE}"
LND_CERT_FILE: "/lnd/tls.cert"
LND_ADMIN_MACAROON_FILE: "/lnd/data/chain/bitcoin/${APP_BITCOIN_NETWORK}/admin.macaroon"
CONFIG: '{ "rateLimit": 10000, "postRateLimit": 10000, "redis": { "port": 6379, "host": "bluewallet_redis_1", "family": 4, "password": "moneyprintergobrrr", "db": 0 }, "lnd": { "url": "$APP_LIGHTNING_NODE_IP:$APP_LIGHTNING_NODE_GRPC_PORT", "password": ""}}'
CONFIG: '{ "rateLimit": 10000, "postRateLimit": 10000, "redis": { "port": 6379, "host": "$APP_BLUEWALLET_REDIS_IP", "family": 4, "password": "moneyprintergobrrr", "db": 0 }, "lnd": { "url": "$APP_LIGHTNING_NODE_IP:$APP_LIGHTNING_NODE_GRPC_PORT", "password": ""}}'
networks:
default:
ipv4_address: "${APP_BLUEWALLET_LNDHUB_IP}"

3
bluewallet/exports.sh Normal file
View File

@ -0,0 +1,3 @@
export APP_BLUEWALLET_LNDHUB_IP="10.21.21.30"
export APP_BLUEWALLET_LNDHUB_PORT="3008"
export APP_BLUEWALLET_REDIS_IP="10.21.21.31"

View File

@ -25,5 +25,3 @@ gallery:
path: ""
defaultUsername: ""
defaultPassword: ""
submitter: Aaron Dewes
submission: https://github.com/getumbrel/umbrel/pull/566

View File

@ -3,8 +3,8 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: btc-rpc-explorer_web_1
APP_PORT: 8080
APP_HOST: $APP_BTC_RPC_EXPLORER_IP
APP_PORT: $APP_BTC_RPC_EXPLORER_PORT
web:
image: getumbrel/btc-rpc-explorer:v3.3.0@sha256:cfd14f8e722cfbf1ad106ba224569c8babe685422461a641abc210e13913c636
@ -13,7 +13,6 @@ services:
environment:
# Docker requirements
BTCEXP_HOST: 0.0.0.0
BTCEXP_PORT: 8080
# Bitcoin Core
BTCEXP_BITCOIND_HOST: $APP_BITCOIN_NODE_IP
BTCEXP_BITCOIND_PORT: $APP_BITCOIN_RPC_PORT
@ -33,3 +32,6 @@ services:
# Disable RPC
BTCEXP_RPC_ALLOWALL: "false"
BTCEXP_BASIC_AUTH_PASSWORD: ""
networks:
default:
ipv4_address: $APP_BTC_RPC_EXPLORER_IP

View File

@ -0,0 +1,2 @@
export APP_BTC_RPC_EXPLORER_IP="10.21.21.12"
export APP_BTC_RPC_EXPLORER_PORT="3002"

View File

@ -30,5 +30,3 @@ gallery:
path: ""
defaultUsername: ""
defaultPassword: ""
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel/pull/334

View File

@ -3,12 +3,12 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: btcpay-server_web_1
APP_PORT: 3003
APP_HOST: $APP_BTCPAY_SERVER_IP
APP_PORT: $APP_BTCPAY_SERVER_PORT
PROXY_AUTH_ADD: "false"
nbxplorer:
image: nicolasdorier/nbxplorer:2.3.58@sha256:e67e7b8953c8567860fe4972046af84c62c5878bb7b299c330db8a816f2d91af
image: nicolasdorier/nbxplorer:2.3.33@sha256:70741f1ecf96de31a4606e0a453d8a25caf5bd8aaf8d345f20740c837f04e6fb
user: "1000:1000"
restart: on-failure
stop_grace_period: 1m
@ -25,12 +25,15 @@ services:
NBXPLORER_BTCNODEENDPOINT: $APP_BITCOIN_NODE_IP:$APP_BITCOIN_P2P_PORT
NBXPLORER_BTCRPCUSER: $APP_BITCOIN_RPC_USER
NBXPLORER_BTCRPCPASSWORD: $APP_BITCOIN_RPC_PASS
NBXPLORER_POSTGRES: User ID=postgres;Host=btcpay-server_postgres_1;Port=5432;Application Name=nbxplorer;MaxPoolSize=20;Database=nbxplorer$APP_BITCOIN_NETWORK
NBXPLORER_POSTGRES: User ID=postgres;Host=$APP_BTCPAY_SERVER_DB_IP;Port=5432;Application Name=nbxplorer;MaxPoolSize=20;Database=nbxplorer$APP_BITCOIN_NETWORK
NBXPLORER_AUTOMIGRATE: 1
NBXPLORER_NOMIGRATEEVTS: 1
networks:
default:
ipv4_address: $APP_BTCPAY_SERVER_NBXPLORER_IP
web:
image: btcpayserver/btcpayserver:1.7.5@sha256:dd7732a0e24c85c1317b67ba4eeb9f0f0af97ed953679b29ee06178b2e797892
image: btcpayserver/btcpayserver:1.6.3@sha256:fb514c417933fc088dec2fb841f5d3572e35429412e79bb12b25fb4437519162
user: "1000:1000"
restart: on-failure
stop_grace_period: 1m
@ -45,14 +48,16 @@ services:
BTCPAY_DATADIR: "/data"
BTCPAY_PLUGINDIR: "/data/plugins"
BTCPAY_DOCKERDEPLOYMENT: "false"
BTCPAY_POSTGRES: "User ID=postgres;Host=btcpay-server_postgres_1;Port=5432;Database=btcpayserver$APP_BITCOIN_NETWORK"
BTCPAY_POSTGRES: "User ID=postgres;Host=$APP_BTCPAY_SERVER_DB_IP;Port=5432;Database=btcpayserver$APP_BITCOIN_NETWORK"
BTCPAY_NETWORK: "$APP_BITCOIN_NETWORK"
BTCPAY_BIND: 0.0.0.0:3003
BTCPAY_BIND: 0.0.0.0:$APP_BTCPAY_SERVER_PORT
BTCPAY_CHAINS: "btc"
BTCPAY_BTCEXPLORERURL: "http://btcpay-server_nbxplorer_1:32838"
BTCPAY_BTCEXPLORERURL: "http://$APP_BTCPAY_SERVER_NBXPLORER_IP:32838"
BTCPAY_BTCLIGHTNING: "type=lnd-rest;server=https://$APP_LIGHTNING_NODE_IP:$APP_LIGHTNING_NODE_REST_PORT/;macaroonfilepath=/lnd/data/chain/bitcoin/$APP_BITCOIN_NETWORK/admin.macaroon;allowinsecure=true"
BTCPAY_SOCKSENDPOINT: $TOR_PROXY_IP:$TOR_PROXY_PORT
BTCPAY_EXPLORERPOSTGRES: User ID=postgres;Host=btcpay-server_postgres_1;Port=5432;Application Name=nbxplorer;MaxPoolSize=20;Database=nbxplorer$APP_BITCOIN_NETWORK
networks:
default:
ipv4_address: $APP_BTCPAY_SERVER_IP
postgres:
image: btcpayserver/postgres:13.7@sha256:dadf0048895a888d88a2dd773dde2f5868c45f74ad37c6d208694df54b590531
@ -66,3 +71,6 @@ services:
POSTGRES_HOST_AUTH_METHOD: trust
volumes:
- ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data
networks:
default:
ipv4_address: $APP_BTCPAY_SERVER_DB_IP

4
btcpay-server/exports.sh Normal file
View File

@ -0,0 +1,4 @@
export APP_BTCPAY_SERVER_IP="10.21.21.19"
export APP_BTCPAY_SERVER_PORT="3003"
export APP_BTCPAY_SERVER_NBXPLORER_IP="10.21.21.20"
export APP_BTCPAY_SERVER_DB_IP="10.21.21.21"

View File

@ -2,7 +2,7 @@ manifestVersion: 1
id: btcpay-server
category: Finance
name: BTCPay Server
version: "1.7.5"
version: "1.6.3"
tagline: Accept Bitcoin payments with 0 fees & no 3rd party
description: >-
BTCPay Server is a payment processor that allows you to receive
@ -33,21 +33,17 @@ gallery:
path: ""
defaultUsername: ""
defaultPassword: ""
releaseNotes: >
New features for 1.7.5!
releaseNotes: >-
1.6.3 is out!
- Greenfield: Lightning addresses API (#4546) @Kukks
- Lightning dashboard ⚡️
- Invoice receipts
Plugins:
- NFC Support Plugin
- Ticket Tailor plugin to sell tickets
- LNBank updates
Bug fixes
More details: https://twitter.com/BtcpayServer/status/1545444707169636353
- Fix several HTML injections (#4545) @NicolasDorier
- BIP21: Uppercase addresses only in QR, not in payment URL (#4553) @dennisreimann
- Checkout v2: UI fixes (#4552) @dennisreimann
Improvement
- Checkout v2: Re-add LNURL for top-up invoices (#4556) @dennisreimann
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel/pull/353
Other included updates (1.6.1-1.6.3): Minor improvements and bug fixes and ability to add a discount in the point of sale keypad!

View File

@ -1,13 +1,13 @@
version: "3.7"
version: "2.1"
services:
app_proxy:
environment:
APP_HOST: calibre-web_server_1
APP_PORT: 8083
APP_HOST: $APP_CALIBRE_WEB_IP
APP_PORT: $APP_CALIBRE_WEB_PORT
server:
image: linuxserver/calibre-web:0.6.19@sha256:898987a2276b7f175f9ae787ef2b7f3f91103a3e621dffe7b67b3a9feae1b922
calibre-web:
image: linuxserver/calibre-web:0.6.18@sha256:f0e848b8c5a28c40eab4b5db88e02a78f8835fff6066b57921b57b2653fb7514
container_name: calibre-web
stop_grace_period: 1m
environment:
- PUID=1000
@ -16,3 +16,6 @@ services:
- ${APP_DATA_DIR}/data/config:/config
- ${APP_DATA_DIR}/data/books:/books
restart: on-failure
networks:
default:
ipv4_address: $APP_CALIBRE_WEB_IP

2
calibre-web/exports.sh Normal file
View File

@ -0,0 +1,2 @@
export APP_CALIBRE_WEB_IP="10.21.21.106"
export APP_CALIBRE_WEB_PORT="8083"

View File

@ -2,7 +2,7 @@ manifestVersion: 1
id: calibre-web
category: Files
name: Calibre Web
version: "0.6.19"
version: "0.6.18"
tagline: A clean web app for your eBooks
description: >-
Calibre-web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.
@ -31,28 +31,3 @@ path: ""
defaultUsername: "admin"
defaultPassword: "admin123"
torOnly: false
releaseNotes: >-
New features:
- Cover images are cached when using gdrive storage and local storage
- Kobo sync now uses calibre-web generated thumbnails as cover pictures
- Pagination button disapear in standard theme once infinite scroll is triggered
- And more. Full details can be found here: https://github.com/janeczku/calibre-web/releases/tag/0.6.19
Bug fixes:
- Read status checkbox works again for custom columns
- Character '\u200d' is removed from end of email address and no longer causes an error on send emails
- Gevent log output is redirected to log file and no longer stops Calibre-web on Windows
- custom column of type "Text, but with a fixed set of permitted values" with default color no longer leads to error 500
- And more. Full details can be found in the changelog.
submitter: Xosten
submission: https://github.com/getumbrel/umbrel-apps/pull/74

View File

@ -1,18 +0,0 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: circuitbreaker_web_1
APP_PORT: 9235
web:
image: ghcr.io/lightningequipment/circuitbreaker:v0.4.1@sha256:cecd9f17ee6de44127a9cdbeb47a6cbdb63b4b720411df6e9cb51cab433219bc
user: "1000:1000"
restart: on-failure
stop_grace_period: 1m
init: true
volumes:
- ${APP_LIGHTNING_NODE_DATA_DIR}:/data/.lnd:ro
- ${APP_DATA_DIR}/data:/data/.circuitbreaker
command: [ "--configdir=/data/.circuitbreaker", "--network=${APP_BITCOIN_NETWORK}", "--lnddir=/data/.lnd", "--rpcserver=${APP_LIGHTNING_NODE_IP}:${APP_LIGHTNING_NODE_GRPC_PORT}", "--httplisten=0.0.0.0:9235" ]

View File

@ -1,55 +0,0 @@
manifestVersion: 1
id: circuitbreaker
category: Lightning Node Management
name: Circuit Breaker
version: "v0.4.1"
tagline: Your Lightning Node's Firewall
description: >-
It allows nodes to protect themselves from being flooded with HTLCs.
With circuitbreaker a maximum to the number of in-flight HTLCs can be set on a per-peer basis.
Known and trusted peers for example can be assigned a higher maximum, while a new channel from a previously unseen node may be limited to only a few pending HTLCs.
Furthermore it is possible to apply rate limits to the number of forwarded HTLCs.
This offers protection against DoS/spam attacks that rely on large numbers of fast-resolving HTLCs.
Rate limiting is implemented with a Token bucket.
Via the UI the minimum interval between HTLCs can be specified.
Large numbers of HTLCs are also required for probing channel balances.
Reducing the information leakage through probing could be another reason to put in place a rate limit for untrusted peers.
Operating modes
There are multiple modes in which circuitbreaker can operate. A default mode and per-peer overrides can be configured via the web ui:
- fail: Fail back HTLCs when limits are exceeded. This minimizes the lock-up of liquidity on the incoming side, but does affect your reputation as a routing node.
- queue: Queue HTLCs when limits are exceeded. Items are popped from the queue when the number of pending HTLCs is below the maximum and the rate limit allows another forward. This mode penalizes upstream nodes for the bad traffic that the deliver by locking up liquidity along the route. This may push upstream nodes to install a firewall too and constrain the mishaving node.
Even in case of circuit breaker malfunction, queue mode should never cause channel force closes because of lnd's built-in protection that auto-fails HTLCs that aren't resolved.
WARNING: Auto-fail is not yet released and scheduled for lnd 0.16. With earlier lnd versions, you risk force-closes!
- queue_peer_initiated: This mode is also queuing HTLCs, but only those that come in through channels for which we aren't the channel open initiator. Not being the initiator means that the remote node is carrying the cost of a potential force-closure with stuck HTLCs. For channels that we initiated, the safer fail mode is used.
WARNING: See queue mode warning.
releaseNotes: >-
- Initial release on the Umbrel App Store
developer: Joost Jager
website: https://github.com/joostjager
dependencies:
- lightning
repo: https://github.com/lightningequipment/circuitbreaker
support: https://github.com/lightningequipment/circuitbreaker/issues
port: 9235
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
path: ""
defaultUsername: ""
defaultPassword: ""
submitter: Joost Jager
submission: https://github.com/getumbrel/umbrel-apps/pull/394

View File

@ -3,7 +3,7 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: code-server_server_1
APP_HOST: $APP_CODE_SERVER_IP
APP_PORT: 8080
server:
@ -14,3 +14,6 @@ services:
- ${APP_DATA_DIR}/data:/home/coder
environment:
PASSWORD: $APP_PASSWORD
networks:
default:
ipv4_address: $APP_CODE_SERVER_IP

2
code-server/exports.sh Normal file
View File

@ -0,0 +1,2 @@
export APP_CODE_SERVER_IP="10.21.21.53"
export APP_CODE_SERVER_PORT="8091"

View File

@ -26,5 +26,3 @@ path: ""
defaultUsername: ""
deterministicPassword: true
torOnly: false
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel/commit/14f8b3aec8cb99ef0940ba0cd9df25b7126a95cc

View File

@ -1,18 +1,18 @@
version: "3.7"
version: "3.8"
services:
app_proxy:
environment:
APP_HOST: core-lightning-rtl_web_1
APP_HOST: $APP_CORE_LIGHTNING_RTL_IP
APP_PORT: 3000
web:
image: shahanafarooqui/rtl:0.13.2@sha256:07d4c1f263c05c32270dcaab3625fc68ef985efce652e7850fbf57f65d36366f
rtl:
image: shahanafarooqui/rtl:0.12.3@sha256:b1327ecfddae5f40c4c985e31c2bc158c4697a274b61bf84acfb27486d05c5bf
restart: on-failure
environment:
PORT: 3000
APP_PASSWORD: $APP_PASSWORD
LN_IMPLEMENTATION: CLN
LN_IMPLEMENTATION: CLT
LN_SERVER_URL: http://${APP_CORE_LIGHTNING_REST_IP}:${APP_CORE_LIGHTNING_REST_PORT}/v1
MACAROON_PATH: /c-lightning-rest/certs
RTL_CONFIG_PATH: /data/
@ -20,3 +20,6 @@ services:
volumes:
- "${APP_DATA_DIR}/data/rtl:/data"
- "${APP_CORE_LIGHTNING_REST_CERT_DIR}:/c-lightning-rest/certs"
networks:
default:
ipv4_address: ${APP_CORE_LIGHTNING_RTL_IP}

View File

@ -0,0 +1 @@
export APP_CORE_LIGHTNING_RTL_IP="10.21.21.97"

View File

@ -2,8 +2,8 @@ manifestVersion: 1
id: core-lightning-rtl
category: Lightning Node Management
name: Ride The Lightning (Core Lightning)
version: "0.13.2-beta"
tagline: Manage your Core Lightning node with RTL
version: "0.12.3"
tagline: Mange your Core Lightning node with RTL
description: >-
This version of RTL is specifically configured to use your Core Lightning node.
@ -43,13 +43,3 @@ gallery:
- 3.jpg
path: ""
deterministicPassword: true
releaseNotes: >-
- Multiple channels with the same peer now visible on the channels page
- User customizable grids enabling you to control: number of rows on the page, columns you want to view and default sorting order
- Setting to control opening of unannounced channels by default
- Other bug fixes and usability fixes
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel-apps/pull/7

View File

@ -1,4 +1,4 @@
version: "3.7"
version: "3.8"
services:
app_proxy:
@ -30,7 +30,7 @@ services:
ipv4_address: ${APP_CORE_LIGHTNING_IP}
c-lightning-rest:
image: saubyk/c-lightning-rest:0.9.0@sha256:00b40443f1f455378587abb37649fdb7c7b1efb43ed64bc9fe78d9bf6ffb4371
image: saubyk/c-lightning-rest:0.7.2@sha256:7943ca9bf7b3952e4956b322405890788b6ddda553908c3a284438ef4e616768
restart: on-failure
ports:
- ${APP_CORE_LIGHTNING_REST_PORT}:${APP_CORE_LIGHTNING_REST_PORT}
@ -45,7 +45,7 @@ services:
ipv4_address: ${APP_CORE_LIGHTNING_REST_IP}
lightningd:
image: lncm/clightning:v22.11.1@sha256:e9939341ca6736566e0499db5a339b25140d6e77fb16ab202c217112f0df9b77
image: lncm/clightning:v0.11.0@sha256:75e0ce04d644f34b07bc8a3b92e58b3db4e3c06bdc0e0cecd1669bc3b2d53421
restart: on-failure
ports:
- ${APP_CORE_LIGHTNING_DAEMON_PORT}:9735
@ -57,21 +57,9 @@ services:
- --bind-addr=${APP_CORE_LIGHTNING_DAEMON_IP}:9735
- --addr=statictor:${TOR_PROXY_IP}:29051
- --tor-service-password=${TOR_PASSWORD}
- --network=${APP_CORE_LIGHTNING_BITCOIN_NETWORK}
- --database-upgrade=true
#- --grpc-port=${APP_CORE_LIGHTNING_DAEMON_GRPC_PORT}
volumes:
- "${APP_DATA_DIR}/data/lightningd:/data/.lightning"
networks:
default:
ipv4_address: ${APP_CORE_LIGHTNING_DAEMON_IP}
tor:
image: getumbrel/tor:0.4.7.8@sha256:2ace83f22501f58857fa9b403009f595137fa2e7986c4fda79d82a8119072b6a
user: "1000:1000"
restart: on-failure
volumes:
- ${APP_DATA_DIR}/torrc:/etc/tor/torrc:ro
- ${TOR_DATA_DIR}:/data
environment:
HOME: "/tmp"

View File

@ -8,10 +8,5 @@ export APP_CORE_LIGHTNING_DAEMON_GRPC_PORT="2105"
export APP_CORE_LIGHTNING_REST_CERT_DIR="${EXPORTS_APP_DIR}/data/c-lightning-rest/certs"
export APP_CORE_LIGHTNING_BITCOIN_NETWORK="${APP_BITCOIN_NETWORK}"
if [[ "${APP_BITCOIN_NETWORK}" == "mainnet" ]]; then
export APP_CORE_LIGHTNING_BITCOIN_NETWORK="bitcoin"
fi
rest_hidden_service_file="${EXPORTS_TOR_DATA_DIR}/app-${EXPORTS_APP_ID}-rest/hostname"
export APP_CORE_LIGHTNING_REST_HIDDEN_SERVICE="$(cat "${rest_hidden_service_file}" 2>/dev/null || echo "notyetset.onion")"

View File

@ -1,26 +0,0 @@
#!/usr/bin/env bash
# Delay booting Core Lightning until the REST Tor Hidden Service is ready
HIDDEN_SERVICE_FILE="${TOR_DATA_DIR}/app-${APP_ID}-rest/hostname"
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
exit
fi
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach c-lightning-rest
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach tor
echo "App: ${APP_ID} - Generating Tor Hidden Service..."
for attempt in $(seq 1 100); do
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
echo "App: ${APP_ID} - Hidden service file created successfully!"
break
fi
sleep 0.1
done
if [[ ! -f "${HIDDEN_SERVICE_FILE}" ]]; then
echo "App: ${APP_ID} - Hidden service file wasn't created"
fi

View File

@ -1,3 +1,7 @@
# Core Lightning REST Hidden Service
HiddenServiceDir /data/app-$APP_ID-rest
HiddenServicePort $APP_CORE_LIGHTNING_REST_PORT $APP_CORE_LIGHTNING_REST_IP:$APP_CORE_LIGHTNING_REST_PORT
# Core Lightning Frontend Hidden Service
HiddenServiceDir /data/app-$APP_ID
HiddenServicePort 80 $APP_PROXY_HOSTNAME:$APP_PROXY_PORT

View File

@ -1,8 +1,8 @@
manifestVersion: 1.1
manifestVersion: 1
id: core-lightning
category: Finance
name: Core Lightning
version: "22.11.1"
version: "0.11.1-build-3"
tagline: Run your personal Core Lightning node
description: >-
Get started with the Lightning network today with Core Lightning - a
@ -35,18 +35,3 @@ gallery:
- 4.jpg
path: ""
defaultPassword: ""
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel-apps/pull/7
releaseNotes: >-
- We reintroduced a number of deprecated features, since some integrations had missed the deprecation window, and asked for some more time to update their apps
- The new experimental reckless plugin manager can be used to download, install and uninstall plugins on the fly. We have many new features planned for it, so stay tuned.
- When receiving a keysend any extra TLV fields will be stored so they can be retrieved later.
- The --database-update=false flag allows users wanting to test unreleased versions from accidentally upgrading the database, and then be unable to switch to a released version again.
- Several performance issues, particularly for larger nodes, have been addressed
And much more. Full changelog from v0.11.1 can be found here: https://github.com/ElementsProject/lightning/releases

View File

@ -24,7 +24,7 @@ services:
ipv4_address: $APP_ELECTRS_IP
electrs:
image: getumbrel/electrs:v0.9.10@sha256:7b64bf93f2137fcd040fc512a302abda17dd1b4cad8181a14fa34c15361f1334
image: getumbrel/electrs:v0.9.4@sha256:b1590ac6cfb0e5b481c6a7af7f0626d76cbb91c63702b0f5c47e2829e9c37997
restart: always
environment:
ELECTRS_LOG_FILTERS: "INFO"
@ -42,13 +42,3 @@ services:
networks:
default:
ipv4_address: $APP_ELECTRS_NODE_IP
tor:
image: getumbrel/tor:0.4.7.8@sha256:2ace83f22501f58857fa9b403009f595137fa2e7986c4fda79d82a8119072b6a
user: "1000:1000"
restart: on-failure
volumes:
- ${APP_DATA_DIR}/torrc:/etc/tor/torrc:ro
- ${TOR_DATA_DIR}:/data
environment:
HOME: "/tmp"

View File

@ -1,26 +0,0 @@
#!/usr/bin/env bash
# Delay booting Electrs until the RPC Tor Hidden Service is ready
HIDDEN_SERVICE_FILE="${TOR_DATA_DIR}/app-${APP_ID}-rpc/hostname"
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
exit
fi
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach electrs
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach tor
echo "App: ${APP_ID} - Generating Tor Hidden Service..."
for attempt in $(seq 1 100); do
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
echo "App: ${APP_ID} - Hidden service file created successfully!"
break
fi
sleep 0.1
done
if [[ ! -f "${HIDDEN_SERVICE_FILE}" ]]; then
echo "App: ${APP_ID} - Hidden service file wasn't created"
fi

View File

@ -1,3 +1,7 @@
# Electrs RPC Hidden Service
HiddenServiceDir /data/app-$APP_ID-rpc
HiddenServicePort $APP_ELECTRS_NODE_PORT $APP_ELECTRS_NODE_IP:$APP_ELECTRS_NODE_PORT
# Electrs Frontend Hidden Service
HiddenServiceDir /data/app-$APP_ID
HiddenServicePort 80 $APP_PROXY_HOSTNAME:$APP_PROXY_PORT

View File

@ -1,8 +1,8 @@
manifestVersion: 1.1
manifestVersion: 1
id: electrs
category: Finance
name: Electrs
version: "0.9.10"
version: "0.9.4-build-2"
tagline: A simple and efficient Electrum Server
description: >
Run your personal Electrum server and connect your Electrum-compatible wallet,
@ -29,13 +29,3 @@ gallery:
- 4.jpg
path: ""
defaultPassword: ""
releaseNotes: >
- Update dependencies (bitcoin, bitcoincore-rpc, tiny_http, serde_json, env_logger)
- Fix mempool fee rate formatting (#761)
- Allow configuring signet p2p magic (#762, #768)
- Don't panic in case of an invalid block header height (#786)
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel/pull/242

View File

@ -3,7 +3,7 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: element_web_1
APP_HOST: $APP_ELEMENT_IP
APP_PORT: 80
web:
@ -12,3 +12,6 @@ services:
# user: "1000:1000"
restart: on-failure
stop_grace_period: 1m
networks:
default:
ipv4_address: $APP_ELEMENT_IP

2
element/exports.sh Normal file
View File

@ -0,0 +1,2 @@
export APP_ELEMENT_IP="10.21.21.45"
export APP_ELEMENT_PORT="8088"

View File

@ -37,5 +37,3 @@ path: ""
defaultUsername: ""
defaultPassword: ""
torOnly: false
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel/commit/bb10e17a6256db19767af7eaeb93e665ac275b24

View File

@ -1,9 +1,9 @@
version: "3.7"
version: "3.8"
services:
app_proxy:
environment:
APP_HOST: elements_web_1
APP_HOST: $APP_ELEMENTS_IP
APP_PORT: 8080
node:
@ -38,6 +38,9 @@ services:
- -port=$APP_ELEMENTS_NODE_P2P_PORT
- -blockfilterindex=1
- -peerblockfilters=1
networks:
default:
ipv4_address: $APP_ELEMENTS_NODE_IP
web:
image: ghcr.io/tiero/elements-web:v0.0.3@sha256:b80dc0df2a4693668a97b874aad6d0a8d3239d03f4d05b4342600166934d0b87
@ -48,18 +51,13 @@ services:
RPC_USER: elements
RPC_PASS: $APP_PASSWORD
RPC_PORT: $APP_ELEMENTS_NODE_RPC_PORT
RPC_HOST: elements_node_1
RPC_HOST: $APP_ELEMENTS_NODE_IP
P2P_PORT: $APP_ELEMENTS_NODE_P2P_PORT
# Remote
REMOTE_RPC_HOST: $APP_ELEMENTS_RPC_HIDDEN_SERVICE
REMOTE_P2P_HOST: $APP_ELEMENTS_P2P_HIDDEN_SERVICE
networks:
default:
ipv4_address: $APP_ELEMENTS_IP
tor:
image: getumbrel/tor:0.4.7.8@sha256:2ace83f22501f58857fa9b403009f595137fa2e7986c4fda79d82a8119072b6a
user: "1000:1000"
restart: on-failure
volumes:
- ${APP_DATA_DIR}/torrc:/etc/tor/torrc:ro
- ${TOR_DATA_DIR}:/data
environment:
HOME: "/tmp"

View File

@ -1,3 +1,6 @@
export APP_ELEMENTS_PORT="3042"
export APP_ELEMENTS_IP="10.21.21.91"
export APP_ELEMENTS_NODE_IP="10.21.21.92"
export APP_ELEMENTS_NODE_RPC_PORT="7041"
export APP_ELEMENTS_NODE_P2P_PORT="18332"

View File

@ -1,26 +0,0 @@
#!/usr/bin/env bash
# Delay booting Elements until the RPC and P2P Tor Hidden Services are ready
HIDDEN_SERVICE_FILE="${TOR_DATA_DIR}/app-${APP_ID}-p2p/hostname"
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
exit
fi
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach node
"${UMBREL_ROOT}/scripts/app" compose "${APP_ID}" up --detach tor
echo "App: ${APP_ID} - Generating Tor Hidden Service..."
for attempt in $(seq 1 100); do
if [[ -f "${HIDDEN_SERVICE_FILE}" ]]; then
echo "App: ${APP_ID} - Hidden service file created successfully!"
break
fi
sleep 0.1
done
if [[ ! -f "${HIDDEN_SERVICE_FILE}" ]]; then
echo "App: ${APP_ID} - Hidden service file wasn't created"
fi

View File

@ -1,7 +1,11 @@
# elements rpc Hidden Service
HiddenServiceDir /data/app-$APP_ID-rpc
HiddenServicePort $APP_ELEMENTS_NODE_RPC_PORT elements_node_1:$APP_ELEMENTS_NODE_RPC_PORT
HiddenServicePort $APP_ELEMENTS_NODE_RPC_PORT $APP_ELEMENTS_NODE_IP:$APP_ELEMENTS_NODE_RPC_PORT
# elements p2p Hidden Service
HiddenServiceDir /data/app-$APP_ID-p2p
HiddenServicePort $APP_ELEMENTS_NODE_P2P_PORT elements_node_1:$APP_ELEMENTS_NODE_P2P_PORT
HiddenServicePort $APP_ELEMENTS_NODE_P2P_PORT $APP_ELEMENTS_NODE_IP:$APP_ELEMENTS_NODE_P2P_PORT
# elements Hidden Service
HiddenServiceDir /data/app-$APP_ID
HiddenServicePort 80 $APP_PROXY_HOSTNAME:$APP_PROXY_PORT

View File

@ -1,4 +1,4 @@
manifestVersion: 1.1
manifestVersion: 1
id: elements
category: Wallet Servers
name: Elements Core
@ -22,5 +22,3 @@ gallery:
path: ''
deterministicPassword: false
torOnly: false
submitter: Marco Argentieri
submission: https://github.com/getumbrel/umbrel/pull/1319

View File

@ -3,11 +3,14 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: esphome_server_1
APP_HOST: $APP_ESPHOME_IP
APP_PORT: 6052
server:
image: esphome/esphome:2022.6.2@sha256:1fac6334b85e76c7fd936036891b7a7ee761ee73fd119662b2cb564c3faf818f
volumes:
- ${APP_DATA_DIR}/data:/config
networks:
default:
ipv4_address: $APP_ESPHOME_IP
restart: on-failure

2
esphome/exports.sh Normal file
View File

@ -0,0 +1,2 @@
export APP_ESPHOME_PORT="6052"
export APP_ESPHOME_IP="10.21.21.104"

View File

@ -20,5 +20,3 @@ path: ""
defaultUsername: ""
defaultPassword: ""
torOnly: false
submitter: ShonP40
submission: https://github.com/getumbrel/umbrel-apps/pull/43

View File

@ -1,20 +0,0 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: file-browser_server_1
APP_PORT: 80
server:
image: filebrowser/filebrowser:v2.22.4@sha256:8a30269612a3bc8453ab29641c3e3d7ad141a8d142efc2cd78196281b1035537
user: "1000:1000"
restart: on-failure
volumes:
- ${APP_DATA_DIR}/data/filebrowser.db:/database/filebrowser.db
- ${UMBREL_ROOT}/data/storage:/data
environment:
- FB_PORT=80
- FB_DATABASE=/database/filebrowser.db
- FB_ROOT=/data
- FB_NOAUTH=true

View File

@ -1,22 +0,0 @@
UMBREL_DATA_DIR="${UMBREL_ROOT}/data"
UMBREL_DATA_STORAGE_DIR="${UMBREL_DATA_DIR}/storage"
DESIRED_OWNER="1000:1000"
if [[ ! -d "${UMBREL_DATA_STORAGE_DIR}" ]]; then
mkdir -p "${UMBREL_DATA_STORAGE_DIR}"
fi
filebrowser_correct_permission() {
local -r path="${1}"
if [[ -d "${path}" ]]; then
owner=$(stat -c "%u:%g" "${path}")
if [[ "${owner}" != "${DESIRED_OWNER}" ]]; then
chown "${DESIRED_OWNER}" "${path}"
fi
fi
}
filebrowser_correct_permission "${UMBREL_DATA_DIR}"
filebrowser_correct_permission "${UMBREL_DATA_STORAGE_DIR}"

View File

@ -1,26 +0,0 @@
manifestVersion: 1
id: file-browser
category: Files
name: File Browser
version: "2.22.4"
tagline: Browse and manage the files you download on your Umbrel
description: >-
File Browser lets you upload, delete, preview, rename and edit your folders and files.
Easily manage files in the Umbrel's storage folder where your downloads from apps like Transmission, Sonarr, Radarr, and Lidarr are currently held.
developer: File Browser
website: https://filebrowser.org/
dependencies: []
repo: https://github.com/filebrowser/filebrowser
support: https://github.com/filebrowser/filebrowser/issues
port: 7421
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
path: "/files/"
deterministicPassword: false
torOnly: false
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel-apps/pull/169

View File

@ -1,38 +0,0 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: firefly-iii_server_1
APP_PORT: 8080
PROXY_AUTH_WHITELIST: "/api/*"
server:
image: fireflyiii/core:version-5.7.18@sha256:f72a0dfcc2e12fb96d4a7f1e64834518692914ce40565904473f64401c1bda58
# This image runs under the user/group www-data:www-data
# user: "1000:1000"
restart: on-failure
environment:
APP_KEY: $APP_FIREFLY_III_APP_KEY
DB_HOST: firefly-iii_db_1
DB_PORT: 3306
DB_CONNECTION: mysql
DB_DATABASE: fireflyiii
DB_USERNAME: fireflyiii
DB_PASSWORD: moneyprintergobrrr
volumes:
- ${APP_DATA_DIR}/data/upload:/var/www/html/storage/upload
- ${APP_DATA_DIR}/data/logs:/var/www/html/storage/logs
db:
image: mariadb:10.9.4@sha256:f5146e2e0999a6afcf2a9134bb415ad068bf80ec29704f374f6f7dabb145738d
user: "1000:1000"
restart: on-failure
stop_grace_period: 1m
volumes:
- ${APP_DATA_DIR}/data/mysql:/var/lib/mysql
environment:
MYSQL_DATABASE: "fireflyiii"
MYSQL_USER: "fireflyiii"
MYSQL_PASSWORD: "moneyprintergobrrr"
MYSQL_ROOT_PASSWORD: "moneyprintergobrrr"

View File

@ -1 +0,0 @@
export APP_FIREFLY_III_APP_KEY=$(derive_entropy "env-${app_entropy_identifier}-APP_KEY" | head -c32)

View File

@ -1,48 +0,0 @@
manifestVersion: 1
id: firefly-iii
category: Finance
name: Firefly III
version: "5.7.18"
tagline: Your personal finance manager
description: >-
Firefly III is a manager for your personal finances. It is self-hosted and open source. This means that it's free, it has no ads and no tracking.
Full transaction management
Firefly III features a double-entry bookkeeping system. You can quickly enter and organize your transactions in multiple currencies.
Advanced rule engine
Use rules to quickly convert shorthands to detailed transactions or clean up your bank's abysmal CSV files.
Budgets, categories and tags
Name your poison. Do you like to work with tags? Need to budget your expenses? Want to categorize all of your hobby expenses? Look no further. Firefly III supports all kinds. Budgets can be expanded with limits in multiple currencies, so you can budget both your daily household expenses and what you spend in Imperial Credits when visiting Tatooine.
Informative reports
Firefly III has advanced reporting capabilities, showing your expenses per week, month or year. But it can also help you audit your accounts with detailed list views. Or perhaps compare budgets or tags? It's all possible.
JSON rest API
For the advanced and mobile users out there, Firefly III features an expansive JSON REST API that allows you to tap into Firefly III's most important features. Create transactions, manage categories and get chart data from any app or system.
developer: Firefly III
website: https://www.firefly-iii.org/
dependencies: []
repo: https://github.com/firefly-iii/firefly-iii
support: https://docs.firefly-iii.org/firefly-iii
port: 30009
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
path: ""
deterministicPassword: false
torOnly: false
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel-apps/pull/378

View File

@ -1,17 +0,0 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: firefox_server_1
APP_PORT: 3000
server:
image: linuxserver/firefox:101.0.1@sha256:04124c6961be68a869f95cfccd509d3a63be157a59a5407f9eaa39dbf19b34a6
restart: on-failure
environment:
- PUID=1000
- PGID=1000
volumes:
- ${APP_DATA_DIR}/data/config:/config
shm_size: "1gb"

View File

@ -1,35 +0,0 @@
manifestVersion: 1
id: firefox
category: Networking
name: Firefox
version: "101.0.1"
tagline: Firefox is a free and open-source web browser
description: >-
Get the browser that protects what is important.
No shady privacy policies or back doors for advertisers. Just a lightning fast browser that does not sell you out.
Get all the speed and tools with none of the invasions of privacy. Firefox Browser collects so little data about you, we do not even require your email address to download. That is because unlike other browsers, we have no financial stake in following you around the web.
Firefox is for everyone:
Available in over 90 languages, and compatible with Windows, Mac and Linux machines, Firefox works no matter what you are using or where you are. Make sure your operating system is up to date for the best experience.
developer: Mozilla Foundation
website: https://www.mozilla.org/en-US/firefox/
dependencies: []
repo: https://support.mozilla.org/en-US/contribute
support: https://support.mozilla.org/en-US/products/firefox
port: 3434
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
path: ""
deterministicPassword: false
torOnly: false
submitter: Pranshu Agrawal
submission: https://github.com/getumbrel/umbrel-apps/pull/253

View File

@ -1,47 +0,0 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: ghostfolio_server_1
APP_PORT: 3334
server:
image: ghostfolio/ghostfolio:1.231.0@sha256:09d957bf25f48093ed6a0b0ac661f6b19337ac091d2b69dc2fb2985a0d51f025
restart: on-failure
environment:
NODE_ENV: production
HOST: 0.0.0.0
PORT: 3334
ACCESS_TOKEN_SALT: $APP_GHOSTFOLIO_ACCESS_TOKEN_SALT
BASE_CURRENCY: USD
DATABASE_URL: postgresql://${APP_GHOSTFOLIO_DB_USERNAME}:${APP_GHOSTFOLIO_DB_PASSWORD}@ghostfolio_postgres_1:5432/${APP_GHOSTFOLIO_DB_DATABASE_NAME}?sslmode=prefer
JWT_SECRET_KEY: ${APP_SEED}
POSTGRES_DB: ${APP_GHOSTFOLIO_DB_DATABASE_NAME}
POSTGRES_USER: ${APP_GHOSTFOLIO_DB_USERNAME}
POSTGRES_PASSWORD: ${APP_GHOSTFOLIO_DB_PASSWORD}
REDIS_HOST: ghostfolio_redis_1
REDIS_PASSWORD: ${APP_GHOSTFOLIO_REDIS_PASSWORD}
REDIS_PORT: 6379
postgres:
image: postgres:14-bullseye@sha256:c2a30d08a6f9e6c365595fd086c9e0436064c52425f15f72379ecf0807bac518
restart: on-failure
stop_grace_period: 1m
user: "1000:1000"
environment:
POSTGRES_USER: ${APP_GHOSTFOLIO_DB_USERNAME}
POSTGRES_PASSWORD: ${APP_GHOSTFOLIO_DB_PASSWORD}
POSTGRES_DB: ${APP_GHOSTFOLIO_DB_DATABASE_NAME}
PGDATA: /var/lib/postgresql/data
volumes:
- ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data
redis:
image: redis:6.2-bullseye@sha256:5cdb2ac6f780e1d250787f4a887c1ed1166e3389757189ea913059409acc6f7c
restart: on-failure
user: "1000:1000"
command: >
--requirepass ${APP_GHOSTFOLIO_REDIS_PASSWORD}
volumes:
- ${APP_DATA_DIR}/data/redis:/data

View File

@ -1,5 +0,0 @@
export APP_GHOSTFOLIO_ACCESS_TOKEN_SALT=$(derive_entropy "env-${app_entropy_identifier}-APP_ACCESS_TOKEN_SALT" | head -c32)
export APP_GHOSTFOLIO_DB_DATABASE_NAME="ghostfolio"
export APP_GHOSTFOLIO_DB_USERNAME="ghostfolio"
export APP_GHOSTFOLIO_DB_PASSWORD="moneyprintergobrrr"
export APP_GHOSTFOLIO_REDIS_PASSWORD="moneyprintergobrrr"

View File

@ -1,34 +0,0 @@
manifestVersion: 1
id: ghostfolio
category: Finance
name: Ghostfolio
version: "1.231.0"
tagline: Manage your wealth like a boss
description: >-
Ghostfolio is a privacy-first, open source dashboard for your personal finances.
Break down your asset allocation, know your net worth and make solid, data-driven
investment decisions.
Protect your assets. Refine your personal investment strategy.
Ghostfolio empowers busy people to keep track of stocks, ETFs or cryptocurrencies
without being tracked.
developer: Ghostfolio
website: https://ghostfol.io/
dependencies: []
repo: https://github.com/ghostfolio/ghostfolio
support: https://github.com/ghostfolio/ghostfolio/discussions
port: 3334
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
path: ""
deterministicPassword: false
torOnly: false
submitter: BeauAgst
submission: https://github.com/getumbrel/umbrel-apps/pull/396

View File

@ -3,8 +3,8 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: gitea_server_1
APP_PORT: 8085
APP_HOST: $APP_GITEA_IP
APP_PORT: $APP_GITEA_PORT
PROXY_AUTH_ADD: "false"
server:
@ -18,17 +18,20 @@ services:
- ${APP_DATA_DIR}/data/gitea/config:/etc/gitea
environment:
GITEA__security__INSTALL_LOCK: "true"
GITEA__server__DOMAIN: "${APP_GITEA_DOMAIN}"
GITEA__server__DOMAIN: "${APP_DOMAIN}"
GITEA__server__HTTP_PORT: "${APP_GITEA_PORT}"
GITEA__server__SSH_DOMAIN: "${APP_GITEA_DOMAIN}"
GITEA__server__SSH_DOMAIN: "${APP_DOMAIN}"
GITEA__server__SSH_PORT: "${APP_GITEA_SSH_PORT}"
GITEA__server__SSH_LISTEN_PORT: "${APP_GITEA_SSH_PORT}"
GITEA__server__START_SSH_SERVER: "true"
GITEA__database__DB_TYPE: "mysql"
GITEA__database__HOST: "gitea_db_1:3306"
GITEA__database__HOST: "${APP_GITEA_DB_IP}:3306"
GITEA__database__NAME: "gitea"
GITEA__database__USER: "gitea"
GITEA__database__PASSWD: "moneyprintergobrrr"
networks:
default:
ipv4_address: $APP_GITEA_IP
db:
image: mariadb:10.5.12@sha256:dfcba5641bdbfd7cbf5b07eeed707e6a3672f46823695a0d3aba2e49bbd9b1dd
@ -41,3 +44,6 @@ services:
MYSQL_USER: "gitea"
MYSQL_PASSWORD: "moneyprintergobrrr"
MYSQL_DATABASE: "gitea"
networks:
default:
ipv4_address: $APP_GITEA_DB_IP

View File

@ -2,5 +2,3 @@ export APP_GITEA_PORT="8085"
export APP_GITEA_SSH_PORT="2222"
export APP_GITEA_IP="10.21.21.39"
export APP_GITEA_DB_IP="10.21.21.40"
export APP_GITEA_DOMAIN="git.heier.io"
export APP_GITEA_TOR_HS_EXTRA_PORTS="22:${APP_GITEA_IP}:${APP_GITEA_SSH_PORT}:gitea_server_1:${APP_GITEA_SSH_PORT}"

4
gitea/torrc.template Normal file
View File

@ -0,0 +1,4 @@
# gitea Hidden Service
HiddenServiceDir /data/app-gitea
HiddenServicePort 80 $APP_GITEA_IP:$APP_GITEA_PORT
HiddenServicePort 22 $APP_GITEA_IP:$APP_GITEA_SSH_PORT

View File

@ -1,4 +1,4 @@
manifestVersion: 1.1
manifestVersion: 1
id: gitea
category: Development
name: Gitea
@ -42,5 +42,3 @@ path: ""
defaultUsername: ""
defaultPassword: ""
torOnly: false
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel/commit/d62e00353917143a3a10d3b376859f51b665d150

View File

@ -1,17 +0,0 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: heimdall_server_1
APP_PORT: 80
PROXY_AUTH_ADD: "false"
server:
image: lscr.io/linuxserver/heimdall:2.5.5@sha256:656efe8ee113ebcf8214d53e69cc25645ec11b020dec63e619bd379361cee58e
volumes:
- ${APP_DATA_DIR}/config:/config
environment:
- PUID=1000
- PGID=1000
restart: on-failure

View File

@ -1,37 +0,0 @@
manifestVersion: 1
id: heimdall
name: Heimdall
tagline: Heimdall organises your most used web sites and web applications in a simple way
category: Productivity
version: "2.5.5"
port: 7392
description: >-
As the name suggests Heimdall Application Dashboard is a dashboard for all your web applications. It doesn't need to be limited to applications though, you can add links to anything you like.
Heimdall is an elegant solution to organise all your web applications. Its dedicated to this purpose so you wont lose your links in a sea of bookmarks.
Why not use it as your browser start page? It even has the ability to include a search bar using either Google, Bing or DuckDuckGo.
You can use the app to link to any site or application, but Foundation apps will auto fill in the icon for the app and supply a default color for the tile. In addition Enhanced apps allow you provide details to an apps API, allowing you to view live stats directly on the dashboad. For example, the NZBGet and Sabnzbd Enhanced apps will display the queue size and download speed while something is downloading.
Supported applications are recognized by the title of the application as entered in the title field when adding an application. For example, to add a link to pfSense, begin by typing "p" in the title field and then select "pfSense" from the list of supported applications.
developer: LinuxServer.io
website: https://heimdall.site
repo: https://github.com/linuxserver/Heimdall
support: https://github.com/linuxserver/Heimdall/issues
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
releaseNotes: ""
dependencies: []
path: ""
torOnly: false
defaultUsername: ""
defaultPassword: ""
submitter: AxelPilop
submission: https://github.com/getumbrel/umbrel-apps/pull/390

View File

@ -3,7 +3,7 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: helipad_web_1
APP_HOST: $APP_HELIPAD_IP
APP_PORT: 2112
web:
@ -17,3 +17,6 @@ services:
- ${APP_LIGHTNING_NODE_DATA_DIR}:/lnd:ro
environment:
LND_URL: "$APP_LIGHTNING_NODE_IP:$APP_LIGHTNING_NODE_GRPC_PORT"
networks:
default:
ipv4_address: $APP_HELIPAD_IP

2
helipad/exports.sh Normal file
View File

@ -0,0 +1,2 @@
export APP_HELIPAD_PORT="2112"
export APP_HELIPAD_IP="10.21.21.65"

View File

@ -19,5 +19,3 @@ gallery:
- 3.jpg
path: ""
defaultPassword: ""
submitter: Podcastindex.org
submission: https://github.com/getumbrel/umbrel/pull/1174

View File

@ -3,12 +3,15 @@ version: "3.7"
services:
app_proxy:
environment:
APP_HOST: home-assistant_server_1
APP_HOST: $APP_HOME_ASSISTANT_IP
APP_PORT: 8123
PROXY_AUTH_ADD: "false"
server:
image: homeassistant/home-assistant:2023.2.0@sha256:a4a9f614a1edcd414d63decd99813a2ff9910d876db1e04641540a0c75d20918
image: homeassistant/home-assistant:2022.6.4@sha256:79e3205fdc1dcc5910370e851d5d504fcf7206d7274ba141d648a08c54268a82
volumes:
- ${APP_DATA_DIR}/data:/config
- ${APP_DATA_DIR}/configuration.yaml:/config/configuration.yaml
networks:
default:
ipv4_address: $APP_HOME_ASSISTANT_IP

View File

@ -0,0 +1,2 @@
export APP_HOME_ASSISTANT_PORT="8083"
export APP_HOME_ASSISTANT_IP="10.21.21.37"

View File

@ -2,7 +2,7 @@ manifestVersion: 1
id: home-assistant
category: Automation
name: Home Assistant
version: "2023.2.0"
version: "2022.6.4"
tagline: Home automation that puts local control & privacy first
description: >-
Open source home automation that puts local control and privacy
@ -32,7 +32,3 @@ path: ""
defaultUsername: ""
defaultPassword: ""
torOnly: false
releaseNotes: >-
Full changelog (for 2023.2.0) can found at: https://www.home-assistant.io/changelogs/core-2023.2
submitter: Umbrel
submission: https://github.com/getumbrel/umbrel/commit/9d79cffae608c6a6ab077f859c1c531a581cf926

View File

@ -1,121 +0,0 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: immich_proxy_1
APP_PORT: 8080
PROXY_AUTH_WHITELIST: "/api/*"
server:
image: altran1502/immich-server:v1.40.0_63-dev@sha256:c61f6c5373efb4544db8d04e6e090b77561b71b07d4f272821a6349a18531e37
entrypoint: ["/bin/sh", "./start-server.sh"]
volumes:
- ${APP_DATA_DIR}/data/upload:/usr/src/app/upload
environment:
NODE_ENV: production
DB_HOSTNAME: immich_postgres_1
DB_USERNAME: ${APP_IMMICH_DB_USERNAME}
DB_PASSWORD: ${APP_IMMICH_DB_PASSWORD}
DB_DATABASE_NAME: ${APP_IMMICH_DB_DATABASE_NAME}
REDIS_HOSTNAME: immich_redis_1
LOG_LEVEL: ${APP_IMMICH_LOG_LEVEL}
JWT_SECRET: ${APP_SEED}
DISABLE_REVERSE_GEOCODING: ${APP_IMMICH_DISABLE_REVERSE_GEOCODING}
REVERSE_GEOCODING_PRECISION: ${APP_IMMICH_REVERSE_GEOCODING_PRECISION}
PUBLIC_LOGIN_PAGE_MESSAGE: ${APP_IMMICH_PUBLIC_LOGIN_PAGE_MESSAGE}
depends_on:
- redis
- postgres
restart: on-failure
microservices:
image: altran1502/immich-server:v1.40.0_63-dev@sha256:c61f6c5373efb4544db8d04e6e090b77561b71b07d4f272821a6349a18531e37
# This service cannot run under 1000:1000
# And because the uploads are shared
# We'll run immich specific services as root
entrypoint: ["/bin/sh", "./start-microservices.sh"]
volumes:
- ${APP_DATA_DIR}/data/upload:/usr/src/app/upload
environment:
NODE_ENV: production
DB_HOSTNAME: immich_postgres_1
DB_USERNAME: ${APP_IMMICH_DB_USERNAME}
DB_PASSWORD: ${APP_IMMICH_DB_PASSWORD}
DB_DATABASE_NAME: ${APP_IMMICH_DB_DATABASE_NAME}
REDIS_HOSTNAME: immich_redis_1
LOG_LEVEL: ${APP_IMMICH_LOG_LEVEL}
JWT_SECRET: ${APP_SEED}
DISABLE_REVERSE_GEOCODING: ${APP_IMMICH_DISABLE_REVERSE_GEOCODING}
REVERSE_GEOCODING_PRECISION: ${APP_IMMICH_REVERSE_GEOCODING_PRECISION}
PUBLIC_LOGIN_PAGE_MESSAGE: ${APP_IMMICH_PUBLIC_LOGIN_PAGE_MESSAGE}
depends_on:
- redis
- postgres
restart: on-failure
machine-learning:
image: altran1502/immich-machine-learning:v1.40.0_63-dev@sha256:a5e660247a5a3c1d1b4ab9d160629def546d7e86e534a55d5ebc0e0eee5cef1a
entrypoint: ["/bin/sh", "./entrypoint.sh"]
volumes:
- ${APP_DATA_DIR}/data/upload:/usr/src/app/upload
environment:
NODE_ENV: production
DB_HOSTNAME: immich_postgres_1
DB_USERNAME: ${APP_IMMICH_DB_USERNAME}
DB_PASSWORD: ${APP_IMMICH_DB_PASSWORD}
DB_DATABASE_NAME: ${APP_IMMICH_DB_DATABASE_NAME}
REDIS_HOSTNAME: immich_redis_1
LOG_LEVEL: ${APP_IMMICH_LOG_LEVEL}
JWT_SECRET: ${APP_SEED}
DISABLE_REVERSE_GEOCODING: ${APP_IMMICH_DISABLE_REVERSE_GEOCODING}
REVERSE_GEOCODING_PRECISION: ${APP_IMMICH_REVERSE_GEOCODING_PRECISION}
PUBLIC_LOGIN_PAGE_MESSAGE: ${APP_IMMICH_PUBLIC_LOGIN_PAGE_MESSAGE}
depends_on:
- postgres
restart: on-failure
web:
image: altran1502/immich-web:v1.40.0_63-dev@sha256:abad6488afaa1d0b4b8ea818221b86e7b45bf72a1ea328d8c0f35ad266b9e544
entrypoint: ["/bin/sh", "./entrypoint.sh"]
environment:
DB_HOSTNAME: immich_postgres_1
DB_USERNAME: ${APP_IMMICH_DB_USERNAME}
DB_PASSWORD: ${APP_IMMICH_DB_PASSWORD}
DB_DATABASE_NAME: ${APP_IMMICH_DB_DATABASE_NAME}
REDIS_HOSTNAME: immich_redis_1
LOG_LEVEL: ${APP_IMMICH_LOG_LEVEL}
JWT_SECRET: ${APP_SEED}
DISABLE_REVERSE_GEOCODING: ${APP_IMMICH_DISABLE_REVERSE_GEOCODING}
REVERSE_GEOCODING_PRECISION: ${APP_IMMICH_REVERSE_GEOCODING_PRECISION}
PUBLIC_LOGIN_PAGE_MESSAGE: ${APP_IMMICH_PUBLIC_LOGIN_PAGE_MESSAGE}
PUBLIC_IMMICH_SERVER_URL: "http://immich_server_1:3001"
restart: on-failure
proxy:
image: altran1502/immich-proxy:v1.40.0_63-dev@sha256:f779b86497b3d4b8822ec0d7341cfd2d1f1688b8859c70a9b16bd36d01468865
environment:
IMMICH_WEB_URL: "http://immich_web_1:3000"
IMMICH_SERVER_URL: "http://immich_server_1:3001"
depends_on:
- server
restart: on-failure
redis:
image: redis:6.2-bullseye@sha256:ffd3d04c8f7832ccdda89616ebaf3cb38414b645ebbf76dbef1fc9c36a72a2d1
user: "1000:1000"
restart: on-failure
volumes:
- ${APP_DATA_DIR}/data/redis:/data
postgres:
image: postgres:14-bullseye@sha256:135c62a8134dcef829a1e4f5568bfae44bcfa2c75659ff948f43c71964366aa4
user: "1000:1000"
environment:
POSTGRES_USER: ${APP_IMMICH_DB_USERNAME}
POSTGRES_PASSWORD: ${APP_IMMICH_DB_PASSWORD}
POSTGRES_DB: ${APP_IMMICH_DB_DATABASE_NAME}
PG_DATA: /var/lib/postgresql/data
volumes:
- ${APP_DATA_DIR}/data/postgres:/var/lib/postgresql/data
restart: on-failure

View File

@ -1,7 +0,0 @@
export APP_IMMICH_DB_USERNAME="immich"
export APP_IMMICH_DB_PASSWORD="moneyprintergobrrr"
export APP_IMMICH_DB_DATABASE_NAME="immich"
export APP_IMMICH_LOG_LEVEL="simple"
export APP_IMMICH_DISABLE_REVERSE_GEOCODING="false"
export APP_IMMICH_REVERSE_GEOCODING_PRECISION="3"
export APP_IMMICH_PUBLIC_LOGIN_PAGE_MESSAGE=""

View File

@ -1,59 +0,0 @@
manifestVersion: 1
id: immich
category: Files
name: Immich
version: "v1.40.1_63-dev"
tagline: High performance photo and video backup solution
description: >-
An open source and high performance self-hosted backup solution for the videos and photos on your mobile device
Features:
- Upload and view videos and photos
- Auto backup when the app is opened
- Selective album(s) for backup
- Download photos and videos to local device
- Multi-user support
- Album and Shared albums
- Scrubbable/draggable scrollbar
- Support RAW (HEIC, HEIF, DNG, Apple ProRaw)
- Metadata view (EXIF, map)
- Search by metadata, objects and image tags
- Administrative functions (user management)
- Background backup
- Virtual scroll
- OAuth support
- LivePhoto backup and playback
- User-defined storage structure
releaseNotes: ""
developer: Alex Tran
website: https://www.immich.app
dependencies: []
repo: https://github.com/immich-app/immich
support: https://github.com/immich-app/immich/discussions
port: 2283
gallery:
- 1.jpg
- 2.jpg
- 3.jpg
path: ""
defaultUsername: ""
defaultPassword: ""
submitter: levma
submission: https://github.com/getumbrel/umbrel-apps/pull/239

View File

@ -1,46 +0,0 @@
version: "3.7"
services:
app_proxy:
environment:
APP_HOST: invidious_web_1
APP_PORT: 3000
web:
image: ceramicwhite/invidious:build-5160d8ba@sha256:42ad6ef922c5058a605fbf0cb60380f44a913b07710ef57848f72ec30fc04901
restart: on-failure
stop_grace_period: 1m
user: "1000:1000"
init: true
environment:
INVIDIOUS_CONFIG: |
db:
dbname: invidious
user: umbrel
password: moneyprintergobrrr
host: invidious_postgres_1
port: 5432
check_tables: true
external_port: 3420
captcha_enabled: false
admins: ["umbrel"]
default_user_preferences:
feed_menu: ["Trending", "Subscriptions", "Playlists"]
default_home: Trending
healthcheck:
disable: true
depends_on:
- postgres
postgres:
image: postgres:13.7@sha256:03652c675ae177af98ddd50f9f4b4b2cf8ad38d0e116aa68fe670fbc2cf250fc
restart: on-failure
user: "1000:1000"
stop_grace_period: 1m
init: true
volumes:
- ${APP_DATA_DIR}/data/db:/var/lib/postgresql/data
environment:
POSTGRES_DB: invidious
POSTGRES_USER: umbrel
POSTGRES_PASSWORD: moneyprintergobrrr

Some files were not shown because too many files have changed in this diff Show More