You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Luke Childs 6b668eb20e Fix typo 4 years ago
.github/workflows Remove use of deprecated ::set-env in GitHub Actions (#59) 4 years ago
bin init 4 years ago
logic Fix typo 4 years ago
middlewares Base64 encode password before passing through Passport (#78) 4 years ago
models init 4 years ago
resources init 4 years ago
routes Remove all redundant LND unlock logic 4 years ago
services Remove all redundant LND unlock logic 4 years ago
test init 4 years ago
utils Add LND_WALLET_PASSWORD env 4 years ago
.babelrc init 4 years ago
.dockerignore Add .github to .dockerignore 4 years ago
.eslintignore init 4 years ago
.eslintrc init 4 years ago
.gitignore added yarn lock 4 years ago
Dockerfile Remove docker-compose dependency 4 years ago
Dockerfile.builder Remove docker-compose dependency 4 years ago
LICENSE Update LICENSE (#22) 4 years ago
README.md Remove docker-compose dependency 4 years ago
app.js Add app management API endpoints (#63) 4 years ago
package.json Remove docker-compose dependency 4 years ago
yarn.lock Remove docker-compose dependency 4 years ago

README.md

Umbrel Manager

Version Docker Build Docker Pulls Community Chat Developer Chat

Twitter Reddit

☂️ manager

Manager runs by-default on Umbrel OS as a containerized service. It provides a low-level system API that handles:

  • User authentication using JWT
  • Encryption/decryption of sensitive information, such as the lightning wallet's seed
  • CRUD operations
  • Lifecycle-management of all other containerized services

🚀 Getting started

If you are looking to run Umbrel on your hardware, you do not need to run this service on it's own. Just download Umbrel OS and you're good to go.

🛠 Running manager

Step 1. Install dependencies

yarn

Step 2. Set environment variables

Set the following environment variables directly or by placing them in .env file of project's root.

Variable Description Default
PORT Port where manager should listen for requests 3006
DEVICE_HOSTS Comma separated list of IPs or domain names to whitelist for CORS http://umbrel.local
USER_FILE Path to the user's data file (automatically created on user registration) /db/user.json
SHUTDOWN_SIGNAL_FILE Path to write a file to signal a system shutdown /signals/shutdown
REBOOT_SIGNAL_FILE Path to write a file to signal a system reboot /signals/reboot
MIDDLEWARE_API_URL IP or domain where umbrel-middleware is listening http://localhost
MIDDLEWARE_API_PORT Port where umbrel-middleware is listening 3005
JWT_PUBLIC_KEY_FILE Path to the JWT public key (automatically created) /db/jwt-public-key/jwt.pem
JWT_PRIVATE_KEY_FILE Path to the JWT private key (automatically created) /db/jwt-public-key/jwt.key
JWT_EXPIRATION JWT expiration in miliseconds 3600
UMBREL_SEED_FILE Path to the seed used to deterministically generate entropy '/db/umbrel-seed/seed'
UMBREL_DASHBOARD_HIDDEN_SERVICE_FILE Path to Tor hostname of umbrel-dashboard /var/lib/tor/dashboard/hostname
ELECTRUM_HIDDEN_SERVICE_FILE Path to Electrum hidden service hostname /var/lib/tor/electrum/hostname
ELECTRUM_PORT Port the Electrum server is listening on 50001
BITCOIN_P2P_HIDDEN_SERVICE_FILE Path to P2P hidden service hostname of bitcoin /var/lib/tor/bitcoin-p2p/hostname
BITCOIN_P2P_PORT P2P port of bitcoin 8333
BITCOIN_RPC_HIDDEN_SERVICE_FILE Path to RPC hidden service hostname of bitcoin /var/lib/tor/bitcoin-rpc/hostname
BITCOIN_RPC_PORT RPC port of bitcoin 8332
BITCOIN_RPC_USER RPC user for bitcoin umbrel
BITCOIN_RPC_PASSWORD RPC password for bitcoin moneyprintergobrrr
GITHUB_REPO GitHub repository of Umbrel getumbrel/umbrel
UMBREL_VERSION_FILE Path to the Umbrel's version file /info.json
UPDATE_STATUS_FILE Path to update status file /statuses/update-status.json
UPDATE_SIGNAL_FILE Path to write the update signal file /signals/update
UPDATE_LOCK_FILE Path to the update lock file /statuses/update-in-progress
BACKUP_STATUS_FILE Path to backup status file /statuses/backup-status.json
TOR_PROXY_IP IP or domain where Tor proxy is listening 192.168.0.1
TOR_PROXY_PORT Port where Tor proxy is listening 9050

Step 3. Run manager

yarn start

You can browse through the available API endpoints here.


️ Don't be too reckless

Umbrel is still in an early stage and things are expected to break every now and then. We DO NOT recommend running it on the mainnet with real money just yet, unless you want to be really #reckless.

❤️ Contributing

We welcome and appreciate new contributions!

If you're a developer looking to help but not sure where to begin, check out these issues that have specifically been marked as being friendly to new contributors.

If you're looking for a bigger challenge, before opening a pull request please create an issue or join our community chat to get feedback, discuss the best way to tackle the challenge, and to ensure that there's no duplication of work.

🙏 Acknowledgements

Umbrel Manager is inspired by and built upon the work done by Casa on its open-source Node Manager API.


License

getumbrel.com