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.
