Access
- Open your browser and visit:
https://<SERVER_IP> - A browser SSL warning is expected (self-signed certificate)
- Click Login
- Create your admin account
Important Files and Directories
- Kener installation directory:
/root/kener - Environment file:
/root/kener/.env - Docker Compose file:
/root/kener/docker-compose.yml - Redis data volume:
/var/lib/docker/volumes/kener_redis/_data - PostgreSQL data volume:
/var/lib/docker/volumes/kener_postgres/_data - Nginx site config:
/etc/nginx/sites-available/kener - Enabled site:
/etc/nginx/sites-enabled/kener - SSL certificates:
/etc/nginx/ssl/fullchain.pemand/etc/nginx/ssl/privkey.pem
Service Management
# View logs
docker compose -f /root/kener/docker-compose.yml logs -f
# Restart services
docker compose -f /root/kener/docker-compose.yml restart
# Stop services
docker compose -f /root/kener/docker-compose.yml down
# Start again
docker compose -f /root/kener/docker-compose.yml up -d
Enabling SSL with a Domain
1. Point your domain to the server IP.
2. Edit /root/kener/.env to set your domain as ORIGIN: ORIGIN=https://yourdomain.com
3. Recreate the services:
cd /root/kener/
docker compose up -d
4. Edit Nginx config and replace both server_name <IP>; with your domain (<your-domain>) for both HTTP (port 80) and HTTPS (port 443) blocks:
vim /etc/nginx/sites-available/kener
5. Install Certbot:
apt install -y certbot python3-certbot-nginx
6. Run the following command to generate a valid Let’s Encrypt certificate:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
7. Replace SSL paths in Nginx config:
vim /etc/nginx/sites-available/kener
# Before:
# ssl_certificate /etc/nginx/ssl/fullchain.pem;
# ssl_certificate_key /etc/nginx/ssl/privkey.pem;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
8. Restart Nginx to apply the changes:
systemctl restart nginx
9. Open your browser and visit: https://yourdomain.com
10. After logging in, go to Site Configuration and update the Site URL field to match your domain (https://yourdomain.com).
Notes
- Redis is used for queues and caching
- PostgreSQL stores all application data
- Public URL is defined via
ORIGINin.env(required for CSRF protection) - Nginx handles HTTPS and reverse proxy
- Once you configure a proper domain name and SSL certificate, update Kener’s Site URL to match your domain. Make sure the domain and SSL are active first-updating the Site URL before that may not work correctly.