JetBrains Fleet 1.44 Help

Install JetBrains Fleet on a remote machine

You can install JetBrains Fleet on a remote machine for remote development. This addresses the case when you have a powerful box at home or in the office, and you want to use your local workstation as a thin client. This approach allows you to leverage higher compute capacity and avoid running heavy tasks locally.

System requirements

For remote development, JetBrains Fleet supports the following operating systems.

  • macOS: starting from macOS 12.

  • Windows: starting from Windows 10 Version 21H2.

Consider the following specifics when working with JetBrains Fleet in WSL and over SSH.

  • WSL: for an optimal experience with Windows Subsystem for Linux (WSL), we recommend Windows 11 22H2 or later, along with WSL2 version 2.1 or later. Ensure WSL has internet access and that x11-apps are installed (FL-19002).

  • SSH: JetBrains Fleet supports remote development over SSH for Linux and macOS systems. A 64-bit CPU (x86-64 or aarch64) is required. Note that Windows remotes are not supported (for more information, follow FL -21596). The remote machine must have internet access, and it is recommended to use bash or similar shells as the default login shell. There is limited support for FIDO-based 2FA and old RSA keys.

Installing JetBrains Fleet

  • Download Fleet launcher binary

    curl -LSs "https://download.jetbrains.com/product?code=FLL&release.type=preview&release.type=eap&platform=linux_x64" --output fleet && chmod +x fleet
    curl -LSs "https://download.jetbrains.com/product?code=FLL&release.type=preview&release.type=eap&platform=linux_aarch64" --output fleet && chmod +x fleet
    curl -LSs "https://download.jetbrains.com/product?code=FLL&release.type=preview&release.type=eap&platform=macos_x64" --output fleet && chmod +x fleet
    curl -LSs "https://download.jetbrains.com/product?code=FLL&release.type=preview&release.type=eap&platform=macos_aarch64" --output fleet && chmod +x fleet
    curl -LSs "https://download.jetbrains.com/product?code=FLL&release.type=preview&release.type=eap&platform=windows_x64" --output fleet.exe

After you have downloaded the binary, you can run it with a terminal command:

Run

  1. Launch Fleet workspace using launcher

    ./fleet launch workspace -- --auth=accept-everyone --publish --enableSmartMode
    ./fleet launch workspace -- --auth=accept-everyone --publish --enableSmartMode
    ./fleet launch workspace -- --auth=accept-everyone --publish --enableSmartMode
    ./fleet launch workspace -- --auth=accept-everyone --publish --enableSmartMode
    fleet.exe launch workspace -- --auth=accept-everyone --publish --enableSmartMode
  2. Get the information to connect to this workspace in the first lines of the output. See the URL in this example output:

    *** Starting Workspace Server *** - listening to 127.0.0.1:3500 - with FSD - with Backend - with UID: ea3b4b2a-528a-438a-a129-6737934375e7 - with HOST: dded2fa4-2673-4d5d-bcea-f98d56852f92 - version: 1.7.38 - URL: https://fleet.jetbrains.com/?version=1.9.237&workspaceId=ea3b4b2a-528a-438a-a129-6737934375e7 - Auth: {"type":"AcceptsEveryone"} - publish: true - lobby: LobbyAddress(host=lobby.fleet.api.jetbrains.com, isSecure=true, port=443)

For steps to uninstall Fleet from a remote machine, refer to Uninstall.

Command options

The command separates the options for the launcher and for the workspace. Use the following syntax:

./fleet launch workspace [launcher options] -- [workspace options]

Command example

./fleet launch workspace --workspace-version 1.9.117 -- --auth=accept-everyone --publish --enableSmartMode --projectDir=/tmp/myproject

In the above example:

  • --workspace-version 1.9.117 is a launcher option

  • --auth=accept-everyone --publish --enableSmartMode --projectDir=/tmp/myproject gets passed to the launched workspace

Option

Description

--workspace-version <version>

The version of Fleet workspace to launch. Defaults to the latest released version if not specified (using a network call). Version has to be specified in full format, for example: 1.19.95

Option

Description

--enableSmartMode


--disableSmartMode

Specifies if Smart Mode should be enabled for the workspace at startup. By default, the workspace starts without Smart Mode to minimize resource consumption. Set --enableSmartMode if you need the code intelligence features.

--projectDir=PATH_TO_DIR

Specifies a project directory to attach to the workspace at startup. This way, if --smart-mode flag is set to enabled, the available backends will be downloaded by the workspace and start indexing the directory content before the first user connects to the workspace.

--workspaceHost=TEXT

The host address on which the workspace will listen.

--workspacePort=INT

The port on which the workspace will listen.

--publish


--noPublish

Specifies whether the workspace should be published to the JetBrains relay and be publicly accessible.

--auth=[accept-everyone|waiting-list|oauth]

The authorizers used by the workspace. Can be specified multiple times for supporting more than one authorizer. Authentication modes other than accept-everyone will be available in future releases.

Troubleshooting

If you encounter an issue, please file a bug report and attach the logs of your command with the --debug prefix. For example: ./fleet --debug launch workspace -- --auth=accept-everyone --publish --enableSmartMode

Disk space considerations for remote connections

When connecting to an instance with SSH, ensure that you have enough disk space. You might experience some difficulties if the instance ran out of storage. In some cases, the error handling might not clearly indicate this as the root cause, leading to confusion (for example, java.lang.IllegalStateException: Error while connecting via ssh, scp exited with code 1.).

Possible causes

  • Large files in directories like .cache/Jetbrains, especially for users with developer tools installed. A user could have up to 5GB or more in this directory alone.

  • Different modes of applications can consume varying amounts of disk space. For example, there is a significant difference between the storage required for some applications when Smart Mode is on or off.

Last modified: 25 November 2024