Getting started

This page will take you step-by-step through setting up and configuring the Find My Device system as a standalone Docker container.

For other options of installing, including Docker Compose and Docker Swarm, please refer to the Setup article.

Requirements

  • a Linux server with Docker installed
    • about 40 MB of free RAM
    • about 150 MB of free disk space
    • an x86 CPU ("regular" server) or ARM CPU (e.g. Raspberry Pi)
  • an Android device, running at least Android 12

Setting up the server

  1. Open a terminal on your server.
  2. Download the docker image.
    $ docker pull findmydevice/findmydevice
  3. Choose a secure password. You will need it in the next step.
  4. Start the application. You can replace the value for UI_PASSWORD with your own password.
    $ docker run -d \
                --name=findmydevice \
                --restart=always \
                -e UI_PASSWORD=yourpasswordhere \
                -v findmydevice_data:/app/data \
                -p 80:3000 \
                findmydevice/findmydevice
    The above command will make the application available on port 80.
  5. Check that the application is running.
    $ docker ps --filter "name=findmydevice"
    This should print something like the following:
    CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
    d5ebc4b9bc54   findmydevice/findmydevice:latest   "/nodejs/bin/node se…"   2 minutes ago   Up 2 minutes   0.0.0.0:80->3000/tcp, :::80->3000/tcp   findmydevice
    
    If the container fails to start, or the Status column says something different than "Up", inspect the logs by running docker logs findmydevice.
  6. Open the application in the browser by visiting your server's IP. If you have chosen a different port than 80, you will have to add it to the URL.
  7. You should see a login dialog. Use your password from step 3 to log in.
  8. The server application does not come with TLS support built-in. You need to set up TLS outside of the application in a reverse proxy, for example using Traefik or jwilder's nginx-proxy and companion, or a Cloudflare tunnel. This is out-of-scope for this tutorial.

Setting up the app

No content yet

Was this page useful to you?
Thank you, your feedback has been recorded!