Files
actual/docs/install/fly.md
Michael Clark 622d97c06f Upgrade docusaurus (#769)
> [!NOTE]  
> Important This will need a decent amount of testing of images, links,
sidebar, rss feed, etc

Upgrading Docusaurus to the latest.

- We can now use Mermaid diagrams
- It's supposed to have better performance
- It's actively supported (v2 wasn't)

Throughout this PR you'll notice 

- Formatting updates (they are required for the build process)
- Some CSS updates - some default styling was changed in the plugins we
use. The updates I've made should make the style near identical to
what's currently live
- Some updates & fixes to bring our docs in line with the v3 way of
writing

Overall, the docs should look the same.


## Known issues:

- The top page nav is flickering when clicking links in the top page
nav. It's happening on the main Docusuarus website
https://docusaurus.io/blog
- If we upgrade we'll have to accept it until they fix it on their end
2025-08-09 14:52:21 +01:00

7.6 KiB
Raw Blame History

title
title
Fly.io

In order to deploy Actual to Fly.io, youll need to use their command line interface from a terminal program. If youve never used a terminal before, dont worry! Well walk you through every step of the process.

Setup

Creating a Fly.io Account

Fly.io has a "pay as you go" plan for new users with no monthly fee, with actual usage billed monthly. Paid plans start at $5/month and include a limited amount of free compute. See Pricing Details for more information.

To begin, youll need to sign up for an account. Go to Fly.io and click “Get Started,” then fill in the form. Note that Fly requires you to provide credit card details for sign up. See their docs on how they use credit cards for more information.

Accessing the fly command line tool

To install the fly command line tool on your local machine, youll need to start by opening a command line terminal on your computer.

  • Windows: Open the Start menu and search for “PowerShell.” Click on the “PowerShell” app to open it.
  • macOS: Open the “Terminal” app from the Utilities folder in your Applications folder.
  • Linux: Open your terminal app of choice.

Next, follow the instructions to install the fly command line tool. When entering the commands, make sure not to include the $ character at the beginning of each line.

Detailed instructions with screenshots for Windows

Note: the exact commands youll need to run may have changed, check the website linked above to make sure you have the latest ones.

  1. Open up PowerShell on your local machine and paste the following command into the window:

    iwr https://fly.io/install.ps1 -useb | iex
    

  2. Flyctl should start installing

  3. Once done you should get a message saying Run flyctl --help to get started:

Detailed instructions with screenshots for macOS

Note: the exact commands youll need to run may have changed, check the website linked above to make sure you have the latest ones.

Additionally, you might get an error such as command not found: fly when you try to use the fly command later. If that happens, youll need to change the fly part of the command to ~/.fly/bin/fly instead.

  1. In the Finder, choose “Go → Utilities” from the menu bar.

  2. Scroll down in the list until you find “Terminal.” Double-click on it to open it.

  3. A window should pop up that will look a bit like this. Note that some of the text may be different, or you may see the last line ending with a $ instead of a %. Both of those are normal.

  4. Type or paste the following command to start the install. Make sure you press the Enter key on your keyboard after youve typed it in.

     curl -L https://fly.io/install.sh | sh
    

  5. Once that has finished, you should see something like this:

Logging into Fly.io

Type fly auth login and press enter to open your browser and log your terminal into Fly.io.

Configuring the app

Now that youve gotten the CLI set up, youre ready to deploy your app to Fly.io. First, youll need our template Fly configuration:

Local terminal

  1. Create a new folder somewhere on your computer. You can call it whatever you want.
  2. Download the template fly.toml file by clicking here and move it into the folder you just created.
  3. Switch back to your terminal and navigate to the folder you just created.
    • On macOS, drag the folder from Finder to Terminal and hold the command key when dropping it into the terminal window.
    • On Windows, type cd, followed by a space, and then enter the full path (e.g. starting with C:\) to the folder you created. You can find the path in Explorer.
    • On Linux, use the cd command.

Deploying the app

Now that youve got the configuration file set up, youre ready to deploy your app to Fly.io. To do so, run the following commands. Wait for each command to finish before running the next one.

First, tell Fly about Actual:

fly launch --image actualbudget/actual-server:latest

This command will ask a series of questions:

  1. An existing fly.toml file was found. Would you like to copy its configuration to the new app? y/N” Type y and press enter to use the config file weve provided.
  2. Do you want to tweak these settings before proceeding? y/N” If you choose y, the web configuration UI will open in your browser.

You can now visit your very own instance of Actual by opening the link on the last line of the output.

Configuring Actual

Now that Actual has been launched, you should be able to navigate to Actual using the URL provided by the Fly command above earlier.

Forgot the URL? Heres how to find it

If you forget the URL, you can always find it by opening https://fly.io/dashboard in a browser. Click on the application you created:

Once you are in there, you should see Hostname section under Application Information - click the link

This will now open Actual so we can start configuring it.

  1. Set a password - remember this, you will need it in the future.

  2. Youll see a welcome screen. Either click “Import my budget” to import your budget from YNAB or the subscription version of Actual, or click “Start fresh” to create a blank budget file.

  3. If everything went well you should then be taken to your very first budget.

Actual is now up and running. Congratulations! Consider checking out our tour next.

Updating Actual

When updates to Actual are released, youll need to re-deploy your app to get the latest version.

fly deploy --image actualbudget/actual-server:latest --app your-app-name

Local terminal

Open a terminal window and navigate to the folder where you set up Actual. Run the following command:

fly deploy

Cost Optimizations

If you're looking to lower your monthly compute costs for Actual Budget and can accept a 5-15 second delay when starting your budgeting session, you can add this feature to your services section and re-deploy.

[[services]]
  auto_start_machines = true
  auto_stop_machines = true

With these settings, Fly.io will automatically stop your instance after a few minutes of inactivity. When a new request comes in, the instance will start up again, which may take 5-15 seconds.

Frequent Issues

  • Q. I have deployed actual to Fly.io but I am being charged, why is this?

    A. Pay as you go plans are billed for all usage monthly.

  • Q. How can I try out a beta/unstable version of Actual?

    A. We publish unstable releases of Actual every day. These versions may have known or unknown issues that could corrupt your budget. If youd like to try them out, follow the instructions to update above, but change actualbudget/actual-server:latest to actualbudget/actual-server:edge.