Installing Docker, Docker Compose and Node.js
We will use Docker to run all the services needed for Redash, except for Node.js
which we will run locally.
- Install Docker and Docker Compose.
- Install Node.js (14.16.1 or newer, can be
installed with Homebrew on OS/X)
- Install Yarn (1.22.10 or newer):
npm install --global firstname.lastname@example.org
Clone the Git repository
First you will need to clone the Git repository:
git clone https://github.com/getredash/redash.git
Create Docker Services
Once you have the above setup, you need to create the Docker services:
This will build the Docker images and fetch some prebuilt images and then start
the services (Redash web server, worker, PostgreSQL and Redis). You can refer to
docker-compose.yml file to see the full configuration.
If you hit an
errno 137 or
errno 134 particularly at
RUN yarn build, make
sure you give your Docker VM enough memory (4GB or more).
Install Node Packages
docker-compose run --rm server create_db
docker-compose run --rm postgres psql -h postgres -U postgres -c "create database tests"
Run webpack Dev Server
Once all Docker services are running (can be started either by
docker-compose up or
docker-compose start), Redash is available at
While we will use webpack’s dev server, we still need to build the frontend
assets at least once, as some of them used for static pages (login page and
To work on the frontend code, you need to use the webpack dev server, which you
Now the dev server is available at
http://localhost:8080. It rebuilds the
frontend code when you change it and refreshes the browser. All the API calls
are proxied to
localhost:5000 (the server running in Docker).
Installing new Python packages (requirements.txt)
If you pulled a new version with new packages or added some yourself, you will
need to rebuild the
docker-compose build worker
docker-compose build server
docker-compose run --rm server tests
Before running tests for the first time, you need to create a database for
docker-compose run --rm postgres psql -h postgres -U postgres -c "create database tests;"
See Debugging a Redash Server on Docker Using Visual Studio