Installation¶
Libredesk is a single binary application that requires postgres and redis to run. You can install it using the binary or docker.
Binary¶
- Download the latest release and extract the libredesk binary.
./libredesk --install
to install the tables in the Postgres DB (⩾ 13) and set the System user password.- Run
./libredesk
and visithttp://localhost:9000
and login with the emailSystem
and the password you set during installation.
Tip
To set the System user password during installation, set the environment variables:
LIBREDESK_SYSTEM_USER_PASSWORD=xxxxxxxxxxx ./libredesk --install
Docker¶
The latest image is available on DockerHub at libredesk/libredesk:latest
The recommended method is to download the docker-compose.yml file, customize it for your environment and then to simply run docker compose up -d
.
# Download the compose file and the sample config file in the current directory.
curl -LO https://github.com/abhinavxd/libredesk/raw/main/docker-compose.yml
curl -LO https://github.com/abhinavxd/libredesk/raw/main/config.sample.toml
# Copy the config.sample.toml to config.toml and edit it as needed.
cp config.sample.toml config.toml
# Edit config.toml and find commented lines containing "docker compose". Replace the values in the lines below those comments with service names instead of IP addresses.
# Run the services in the background.
docker compose up -d
# Setting System user password.
docker exec -it libredesk_app ./libredesk --set-system-user-password
Go to http://localhost:9000
and login with the email System
and the password you set using the --set-system-user-password
command.
Compiling from source¶
To compile the latest unreleased version (main
branch):
- Make sure
go
,nodejs
, andpnpm
are installed on your system. git clone [email protected]:abhinavxd/libredesk.git
cd libredesk && make
. This will generate thelibredesk
binary.
Nginx¶
Libredesk using websockets for real-time updates. If you are using Nginx, you need to add the following (or similar) configuration to your Nginx configuration file.
location / {
proxy_pass http://localhost:9000;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}