Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
39 changes: 39 additions & 0 deletions rootfs/standard/usr/share/mynode_apps/canary/canary.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
{
"name": "Canary",
"short_name": "canary",
"author": {
"name": "Canary Team",
"link": "https://github.com/schjonhaug/canary"
},
"website": {
"name": "Canary",
"link": "https://github.com/schjonhaug/canary"
},
"category": "bitcoin_app",
"short_description": "Wallet Monitor",
"description": [
"Canary is a Bitcoin wallet monitoring and early warning system for cold storage.",
"Get instant notifications when your bitcoins move via ntfy push notifications.",
"Features include: transaction monitoring, RBF/CPFP detection, balance alerts, and deep wallet scanning."
],
"latest_version": "v1.3.0",
"supported_archs": ["amd64", "arm64"],
"download_skip": true,
"requires_docker_image_installation": true,
"requires_electrs": true,
"requires_bitcoin": false,
"requires_lightning": false,
"http_port": "3005",
"show_on_homepage": true,
"show_on_application_page": true,
"app_tile_name": "Canary",
"app_tile_running_status_text": "Monitoring",
"app_tile_default_status_text": "Wallet Monitor",
"app_tile_button_text": "Open",
"app_tile_button_href": "http://mynode.local:3005",
"can_uninstall": true,
"can_reinstall": true,
"can_enable_disable": true,
"homepage_order": 75,
"sdk_version": 1
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
23 changes: 23 additions & 0 deletions rootfs/standard/usr/share/mynode_apps/canary/canary.service
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
[Unit]
Description=Canary
Wants=electrs.service docker.service
After=electrs.service docker.service

[Service]
# Clean up any existing containers
ExecStartPre=-/usr/bin/docker stop canary canary-frontend
ExecStartPre=-/usr/bin/docker rm canary canary-frontend
# Start backend container
ExecStartPre=/usr/bin/docker run -d --name canary --network host -v /mnt/hdd/mynode/canary:/app/data -e CANARY_DATA_DIR=/app/data -e CANARY_ELECTRUM_URL=tcp://127.0.0.1:50001 -e CANARY_NETWORK=mainnet -e CANARY_MODE=self-hosted -e CANARY_BIND_ADDRESS=0.0.0.0:3010 schjonhaug/canary-backend:v1.3.0
# Give backend time to start
ExecStartPre=/bin/sleep 2
# Start frontend container (main process)
ExecStart=/usr/bin/docker run --rm --name canary-frontend --network host -e API_URL=http://127.0.0.1:3010 -e PORT=3005 schjonhaug/canary-frontend:v1.3.0
ExecStop=/usr/bin/docker stop canary canary-frontend
ExecStopPost=-/usr/bin/docker rm canary
Type=simple
Restart=always
RestartSec=60

[Install]
WantedBy=multi-user.target
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#!/bin/bash
set -e

echo "Pulling Canary Docker images..."
docker pull schjonhaug/canary-backend:v1.3.0
docker pull schjonhaug/canary-frontend:v1.3.0

echo "Creating data directory..."
mkdir -p /mnt/hdd/mynode/canary
chown -R bitcoin:bitcoin /mnt/hdd/mynode/canary

echo "Canary installation complete."
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#!/bin/bash

# This will run after launching the application
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/bin/bash
# Ensure data directory exists before starting
mkdir -p /mnt/hdd/mynode/canary
chown -R bitcoin:bitcoin /mnt/hdd/mynode/canary
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/bash
echo "Stopping Canary containers..."
docker stop canary canary-frontend 2>/dev/null || true
docker rm canary canary-frontend 2>/dev/null || true

echo "Removing Docker images..."
docker rmi schjonhaug/canary-backend:v1.3.0 2>/dev/null || true
docker rmi schjonhaug/canary-frontend:v1.3.0 2>/dev/null || true

echo "Removing data directory..."
rm -rf /mnt/hdd/mynode/canary

echo "Canary uninstalled."