Repository navigation
Menu Bar and Window
Flotilla lives in the menu bar as well as in a window. Closing the window does not stop
anything, and neither does quitting: containers belong to container, not to Flotilla, and keep
running either way.
The icon is Flotilla's three sails, with a status badge in the corner:
| Badge | Means |
|---|---|
| none | Flotilla is still finding out — a badge that guesses is worse than no badge |
| green |
container is running on This Mac and nothing needs attention |
| red | something on This Mac or a host needs attention — the same list Overview shows |
| no-entry |
container is stopped, or not installed, on This Mac |
A dismissed notice no longer turns the badge red. The icon is drawn rather than loaded, because the badge is colour and a template image is one colour by definition; the sails come from the same geometry as the app icon, so the two cannot drift.
Clicking the icon opens a native menu. It used to be a 380-point popover with per-container rows, inline start and stop, hover boxes and meters, and it grew with every container and every host until it no longer fitted the job. Docker Desktop's menu was the model instead: one status line, a way into the window, a few submenus. Every item is a door into the window rather than a copy of part of it, and nothing in the menu exists only there.
From the top:
- The status line — what the badge says, in words, and the fleet in one clause: "3 of 4 hosts connected". Whenever Flotilla is keeping this Mac awake it says so instead, and why.
- Open Flotilla (⌘O) — the window, on Overview.
- Needs Attention (12), only when something does. Up to ten notices as short headings; each opens a submenu with the full message, its fix (Start, Retry…), Dismiss where allowed, and Show in Flotilla. All Notifications… opens the rest. A menu cannot wrap, so a long message is broken into lines there; the whole of it is in Flotilla.
-
Hosts — This Mac and every paired host, each opening its page. A host that is not answering,
or whose
containeris stopped, says so in its row, so the submenu is a roll-call as well as a list. Thirty Macs are thirty short rows one level down rather than thirty tall rows in the menu. -
Run Container… and Pull Image…, greyed out while
containeris not usable. - Settings… (⌘,).
- Troubleshoot — Start, Restart and Stop Container System, the last two asking first in the same words as everywhere else; Show Logs, Show Activity and Create Support Bundle….
- About Flotilla, which opens Settings ▸ About.
- Check for Updates… on an admin, or Updated by Your Admin Mac on a host.
- Quit Flotilla, whose second line says Containers keep running — Docker Desktop's most-cited gap is not saying what quitting does to your containers.
Show Dock icon in Settings ▸ General decides whether Flotilla also appears in the Dock, or lives in the menu bar alone. The menu-bar item is always there, which is what makes hiding the Dock icon safe: there is always a way back to the window. The setting has two states, not three, because macOS has only two activation policies that differ.
With the Dock icon off, the icon correctly disappears but a window still opens at login. Three approaches were tried and none held. It is recorded rather than quietly left, and it is not expected to be fixed before the app moves to a real Xcode project.
Across the top of the window, the full width, sidebar included: the traffic lights, the wordmark, and at the right edge four app-level controls in one capsule:
- The bell — Notifications, with a red count of what needs attention, gone at zero.
- Links — Flotilla on GitHub and melonfleet.dev.
- Appearance — cycles Auto → Light → Dark from the bar, so you can check both without opening Settings. It writes the same stored setting Settings does, so the two can never disagree. Auto is first in the cycle because it is where most people should end up. Both appearances are equally supported.
- Settings — the gear. Settings is not in the sidebar: the sidebar lists the things you manage, not the application's own preferences.
The whole bar drags the window. It is the window's first row rather than a title-bar accessory because a sidebar runs up under the title bar, and nothing in the title-bar region can span across it — that was measured, not assumed.
The traffic lights, the wordmark and this cluster are aligned deliberately; if something here looks a pixel out, it is a bug worth reporting rather than a rounding decision.
The search box is in the middle of the bar: one field to filter the page, reach any section or item by name, or run any command. ⌘K, or View ▸ Go To…, focuses it. See Views and filtering.
- Collapse sidebar to icons / Expand sidebar — the toggle in the middle of the sidebar's edge. The icon-only rail gives you the width back; each row's name moves to its tooltip.
- Counts beside each section, right-aligned, so "how much is there" is answered without visiting every one.
A bar across the bottom of the window. The sidebar and forms never cover it.
On the left, in order, with thin lines between:
-
● Container — a dot for
container: running, stopped, starting or in trouble. Click it for a menu that says the state first, then Start, Stop and Restart Container System, Download and Installcontainer1.5.0… and Install Recommended Kernel. Items that do not apply are greyed out, not hidden. - ● Helper — a dot and the word. It shows the real state of the Flotilla Helper. Click it for its state and its buttons. It is hidden in a build that cannot use the Helper.
-
The version — for example
v1.5.0-beta.5. Click it for the update menu: Check for Updates…, when it last checked, the update channel and Switch Channel, Automatically check, and Release Notes. Below that are the fleet updates (Flotilla andcontaineron your hosts) and the Suggestions library, with its version and Check Now. On a host the menu says the admin Mac updates it.
On the right is Tasks, below. When Tasks is quiet, an update check shows what it is doing just left of it: checking, downloading, verifying, installing.
Every job you start becomes a task: a pull, a build, an install, a stack, a cluster. Progress does not take over the window, so you can keep working.
The Tasks item on the right of the status bar shows the news at a glance:
- While jobs run: a spinner, how many, and the progress or elapsed time of the newest.
- After a failure: Failed, in red, until you look.
- After a success: Done, for a moment.
- Otherwise: Tasks, and how many jobs finished.
Click it, choose View ▸ Show Tasks, or press ⌥⌘T to show or hide the Tasks panel. Esc, while the panel has focus, hides it too. Hiding it cancels nothing.
The Tasks panel rises on the right side of the window, over the page. Each task is one line: an icon for its kind, its title, and its progress or elapsed time. Hover for where it runs and its current step. Open the caret for its steps and output.
- Finished jobs fold into one line, "N finished". A failure among them is named there.
- The panel puts itself away two seconds after the last job ends well. A failure keeps it up.
- Stop shows on a pull or a build of an image on this Mac. It ends the job. Layers already fetched stay.
- Retry shows on jobs that are safe to repeat. It starts a new task and keeps the old one. A run, a stack, a machine or cluster create, an import and DNS setup can't be retried, because they may have half finished.
- When a container you ran is still running, its task has a Stop that stops that container, on the Mac it runs on. Flotilla matches it by name and creation time, so a later container with the same name is never stopped by mistake. If it can't read the creation time, there is no button.
- There is no Pause.
containercan't pause a pull or a build.
A failed task raises a notice with Show Task. If Flotilla is in the background, it also sends a macOS notification. Successes don't notify. A switch for this is in Notifications.
Pulling, building, creating a machine or a cluster, and the other forms return to their list when you start them. The job lives in Tasks. Two pulls are two tasks.
Every form has the same buttons at the top right, left to right:
| Button | What it does |
|---|---|
| ⋯ | Rare extras, such as Delete… or Save to File…. Only on forms that have some. |
| ✕ | Closes the form. Esc does the same. If you have unsaved changes, it asks first, as Back does. |
| ▶ or ✓ | The main action, in the accent colour. Return presses it. |
▶ starts a job that shows in Tasks: Run, Pull, Build, New Volume, Send to Hosts and so on. ✓ keeps your changes: a group, a registry, a DNS domain, Add Host. Hover over it for its exact name, such as "Push to 3 Hosts". It is greyed out until the form is valid.
There is no row of buttons at the bottom. Messages, such as why the main action is greyed out, sit in a band under the header. A form with nothing to save shows ✕ alone.
Dismissing a half-filled form asks first, whichever way you leave it: Back, ✕, Esc, ⌘K or ⌘Q.
The menu bar at the top of the screen, while Flotilla is in front:
- Flotilla — Check for Updates… (or Updated by Your Admin Mac) and Settings… (⌘,).
- File — Run Container…, New Group…, New Machine…, New Cluster…, Pull Image…, Build Image from Dockerfile…, Add Registry…, New Volume…, New Network… and New DNS Domain…, each with a ⌃⌘ shortcut except the last; Suggestions for stacks, volumes, networks, machines, clusters and DNS domains; and Import Configuration… (⇧⌘I) and Export Configuration… (⇧⌘E).
- View — Go To… (⌘K), Show List Only (⌥⌘L), Show Tasks (⌥⌘T), Ask Greta (⌘G) and Dictate to Greta (⇧⌘D, while Greta's message field is on screen). See Greta.
- Help — Setup Assistant…, which runs first run again, and Create Support Bundle….
Every one goes through the same request path as the button in the window, so a form opened from the menu is the same form, and it still works with the window closed: the window opens to show it.
Flotilla — a native macOS app for Apple's container CLI. A personal project, free to use, Apache-2.0. No account, no telemetry.
Getting started
Fleet
Containers and resources
- Containers
- Groups and suggestions
- Images
- Registries
- Volumes and networks
- Kubernetes
- DNS
- Machines and containers
- Machines
- Terminal
- Files
Using Flotilla
- Menu bar and window
- Views and filtering
- Logs and diagnostics
- Sharing and export
- Flotillafile
- Settings
- Greta
- Flotilla Helper
More