OpenBI Docs Buy

Install on a Mac

OpenBI Server runs on a Mac with Apple silicon as two launchd daemons, with the same commands as on Windows, run as sudo openbi-server. There is no IIS: the server answers on ports 80 and 443 itself, with certificates from Let’s Encrypt, or from its own certificate authority for a made-up domain.

At a glanceMac
Runs onApple silicon, macOS 14 (Sonoma) or later
InstallerOpenBI-Server-0.1.49-arm64.pkg, signed and notarized
Command lineopenbi-server, with sudo, from any folder
Runs asThe launchd daemons no.norwayanalytics.openbi.server and no.norwayanalytics.openbi.accounts, as the hidden account _openbi
Its data/Library/Application Support/OpenBI Server
NetworkIn: TCP 80 and 443, to the server itself. Out: HTTPS to api.keygen.sh and Let’s Encrypt, and with a seat licence to billing.querex.no

Before you start

  • The Mac: Apple silicon, macOS 14 or later, that stays on and awake, and an administrator who can use sudo.
  • Your licence, for your domain: buy it on the setup page once the server is installed (see Buy OpenBI Server), or have its key at hand.
  • Public DNS: bi.<your domain> and accounts.<your domain> pointing to the Mac, or to the router in front of it. See Your two addresses.
  • Ports 80 and 443 reaching the Mac from the internet, forwarded by your router if there is one: Let’s Encrypt checks each address on port 80.
  • Or, on your own network only, a made-up domain such as openbi.home.arpa, with the server’s own certificates: see No domain yet: a made-up one.

Check the package

pkgutil must name the Developer ID Installer with Team ID 896HW73HL8, and spctl must answer accepted, source=Notarized Developer ID:

pkgutil --check-signature OpenBI-Server-0.1.49-arm64.pkg
spctl -a -vvv -t install OpenBI-Server-0.1.49-arm64.pkg

Install

Open the package and follow it, or install it from Terminal:

sudo installer -pkg OpenBI-Server-0.1.49-arm64.pkg -target /

The installer stops an earlier version’s daemons, puts the files in place, and starts the daemons. Its last page says what to do next: the licence, then doctor.

What it installs

WhatWhere, and how
The program/Library/OpenBI Server/: the server (with OpenBI Accounts and the command line in one program), the engine in engine/, the notices and the bill of materials (sbom.cdx.json, sbom.html). Nothing else to install: .NET comes inside.
The command/usr/local/bin/openbi-server, a link to the program.
The servicesTwo launchd daemons, no.norwayanalytics.openbi.server and no.norwayanalytics.openbi.accounts (in /Library/LaunchDaemons/), started at boot and again whenever they stop, as the account _openbi: hidden, no shell, no home of its own, no password, made by the installer.
Its data/Library/Application Support/OpenBI Server/, _openbi’s alone (700): licences, settings, records, published versions, certificates, logs. The key that seals its secrets on this Mac is in /Library/Application Support/OpenBI/, _openbi’s alone too.

Add your domain’s licence

On the Mac itself, the setup page at http://localhost:5780/ buys a licence, and the server adds it by itself (see Buy OpenBI Server), or adds a key you have, under I have a license key. Or add the key with the command line. Without --key, it asks for the key, hidden:

sudo openbi-server domain add norwayanalytics.no

The server answers only for its licensed domains and their subdomains. See The licence.

HTTPS with Let’s Encrypt

The server opens ports 80 and 443 itself. For each address, a Let’s Encrypt certificate; --email is IT’s address, for Let’s Encrypt’s notices. Without --apply the command only checks and lists the steps: the name licensed, the front door on, the name reaching this Mac on port 80, and the certificate.

sudo openbi-server https letsencrypt --host bi.norwayanalytics.no --email it@norwayanalytics.no --apply

The server renews each certificate itself, a month before it runs out, and sends http:// to https:// as soon as a name has its certificate. sudo openbi-server https status shows each certificate and its end date. For a made-up domain, sudo openbi-server https local --domain <domain> --apply gives the server certificates from its own authority instead, which it renews itself: see No domain yet: a made-up one.

OpenBI Accounts and sign-in

sudo openbi-server accounts setup --public-url https://accounts.norwayanalytics.no --name "Norway Analytics AS"
sudo openbi-server accounts service restart
sudo openbi-server https letsencrypt --host accounts.norwayanalytics.no --email it@norwayanalytics.no --apply
sudo openbi-server signin use-accounts --server-url https://bi.norwayanalytics.no
sudo openbi-server service restart

E-mail for invitations (optional), as on Windows; the command asks for the client secret, hidden:

sudo openbi-server accounts mail set --graph --tenant <tenant id> --client-id <app id> --from support@norwayanalytics.no
sudo openbi-server accounts mail test --to it@norwayanalytics.no

Using Microsoft Entra ID, Okta or another OpenID Connect provider instead? See Your own sign-in provider.

The first administrator

sudo openbi-server accounts user invite --email kari@norwayanalytics.no --name "Kari Nordmann" --domain norwayanalytics.no
sudo openbi-server admin add --email kari@norwayanalytics.no
sudo openbi-server doctor

With e-mail set up, Kari gets her invitation by e-mail; without it, the command prints the link to give her. doctor checks macOS, the daemons and the data folder, the licences and Keygen, the clock, OpenBI Accounts and the sign-in, the engine, the bill of materials, ports 80 and 443, each certificate and the macOS firewall, and gives each problem the command that fixes it.

The services and their logs

sudo openbi-server status
sudo openbi-server service restart
sudo openbi-server accounts service restart
sudo openbi-server logs --lines 100

The logs are in the data folder’s logs/: the server’s and OpenBI Accounts’ own (server-…, accounts-…), and what each daemon printed as it started (launchd-server.log, launchd-accounts.log), which is where to look when one won’t start.

Differences from Windows

WindowsMac
The commandOpenBI.Server.exe, as administratorsudo openbi-server
In frontIIS (iis setup)The server itself, on ports 80 and 443. No iis commands
CertificatesLet’s Encrypt through win-acme, your own in IIS, or the server’s own (https local, renewed by a scheduled task)Let’s Encrypt, or the server’s own (https local), each renewed by the server
HTTP to HTTPShttps redirect --applyBy itself, once a name has its certificate
Firewallfirewall --apply opens 80 and 443The macOS firewall lets the signed server in; doctor says whether it is on
ServicesWindows services, virtual accountslaunchd daemons, the account _openbi
Secrets sealed withWindows’ DPAPI, for the machineA key of the Mac’s own, readable by _openbi only
Engine limits at installMSI properties, or engine limitssudo openbi-server engine limits, then service restart
The setup pageOpens at the end of the MSIAt http://localhost:5780/ on the Mac itself, to buy or add a licence, until sign-in is set up; or domain add

Everything else, the portal, workspaces, publishing, refresh, Excel and the cluster, works the same on both.

Frequently asked questions

Can a Mac serve the office only, with internal DNS?

Yes, from 0.1.49, with the server’s own certificate authority, https local, which each device trusts once: see No domain yet: a made-up one. It is made for a made-up domain, and serves a real domain’s names too. OpenBI has no command to put a certificate from your company’s own authority on a Mac’s front door: for that, use Windows (see Office only, with internal DNS).

Does the Mac have to stay awake?

Yes, as any server: a sleeping Mac answers no one, and runs no scheduled refresh. A schedule time missed by more than an hour is skipped, not run late.

How do we upgrade?

Install the newer package over it, the same way. The data folder stays. See Upgrade and rollback.

Last updated · OpenBI Server 0.1.49