home User Guide Getting Started Help Center Documentation Community Training Certification
Looker keyboard_arrow_down
language keyboard_arrow_down
Looker documentation will be moving to cloud.google.com in mid-2022!
All the information you rely on will be migrated and all docs.looker.com URLs will be redirected to the appropriate page.
Installing the Looker application

This page describes how to install the Looker application for a customer-hosted deployment.

Hosting the Looker application is independent of where your data resides; data always remains in-database and is not copied to the Looker instance.

Deployment specifications

If you’re going to run Looker on a network that does not connect to the Internet, you may need to set up a proxy server to communicate with Looker’s license server or use serverless web services that only make web calls, like BigQuery.

Install the Looker application on a dedicated machine that meets the following minimum requirements:

In order to avoid maintenance and resource conflicts, you should not use the Looker server to host other applications.

Enable ntpd or chronyd

NTP stands for Network Time Protocol. It enables your host’s system clock to always maintain the correct time, which is important for Looker to function correctly. Looker does not require any particular time synchronization software be used as long as times remain in sync. It is NOT necessary to run an NTP server; only the NTP client is needed. You may substitute chronyd for NTP.

Consult your OS vendor’s documentation for information on enabling ntpd or chronyd.

Install the Looker application

  1. Create group looker.

    sudo groupadd looker
  2. Create user looker and its home directory.

    sudo useradd -m  -g looker  looker
  3. Switch to the looker user; do not run Looker as root.

    sudo su - looker
  4. Create looker subdirectory in the home directory.

    mkdir ~/looker
  5. Change to the looker subdirectory.

    cd ~/looker
  6. Make sure you are in the correct directory.


    If your user directories are under /home, the output of this command should be /home/looker/looker.

  7. Download the desired Looker JAR files through one of the methods on the Downloading the Looker JAR files documentation page. Ensure that both JAR files are the same version; using different versions of the core and dependency JAR files can cause instability in your Looker installation.

  8. Download the latest startup script at this GitHub repo. If you would like Looker to run at system startup, you can download and use both the systemd and the init script options.

  9. Move the startup script (named looker) and Looker JAR files, named looker-x.x.x.jar and looker-dependencies-x.x.x.jar, where x.x.x is the version number, to the new ~/looker directory.

  10. Rename looker-x.x.x.jar to looker.jar and looker-dependencies-x.x.x.jar to looker-dependencies.jar.

  11. The startup script automatically determines how much Java memory to allocate to Looker. If you would like to customize this value manually, see the Recommended Java memory settings documentation page for more information.

  12. Make the Looker startup script executable (set the permissions to 0750).

    chmod 0750 looker
  13. Start the Looker process from shell as the looker user.

    ./looker start
  14. For startup flag help, use:

    java -jar looker.jar --help

    Or, for startup command help, use:

    java -jar looker.jar help
  15. Open a browser to https://hostname:9999 where hostname is the DNS name of the host running Looker.

    You should use https in the URL, which will create a security warning that you will need to bypass. This warning will persist until a valid SSL certificate is installed on the server.

  16. Enter the license key obtained from your Looker analyst.

  17. Enter a name, an email, and a password to create your first account.

Create a DNS record

Add a looker.[yourdomain].com DNS record for the server. This step is optional, but recommended.

Deploying Looker automatically

Looker may be deployed using a configuration management tool such as Ansible or Chef. An example Ansible role for automated deployment is available on the Configuration management tools documentation page.

Hypervisor tuning

Looker runs as a Java virtual machine. If your Looker instance is on a VMware guest, you may need to do some performance tuning. See the VMware Java best practices guide.

On other virtualization platforms, it may improve performance to reserve the Looker host’s memory from the hypervisor. This is not controllable on Amazon EC2; however, for other vendors, consult their documentation for more information.

Setting up an optional MySQL backend database

By default, Looker uses a HyperSQL in-memory database to store its configuration, users, and other data. You can use an external MySQL database, however, to store Looker’s internal information. See the Migrating to MySQL documentation page for information about configuring and tuning a MySQL backend database.

Next steps

After you have installed Looker, you’re ready to configure Looker startup options.