Acelle / Coolify Session Handoff

Date: 2026-05-13

This file preserves the key context from the deployment/debugging session so a new Codex session can continue without guessing.

Remote Server

Useful SSH command:

ssh -i /private/tmp/codex_coolify_opencode_ed25519 root@159.223.130.156

AcelleMail Status

User uploaded Acelle source from:

/Users/sergey/Downloads/acellemail

to:

/opt/acellemail

using:

rsync -av --progress /Users/sergey/Downloads/acellemail/ root@159.223.130.156:/opt/acellemail/

Codex then added a Docker deployment overlay:

The overlay was synced to the server:

rsync -av -e 'ssh -i /private/tmp/codex_coolify_opencode_ed25519' acelle-deploy/ root@159.223.130.156:/opt/acellemail/

Current Acelle URL:

http://159.223.130.156:8088/install

Expected redirect:

/install/system-compatibility

Docker Compose State

On the server:

cd /opt/acellemail
docker compose ps

Expected services:

Compose uses:

Database/env values are in:

/opt/acellemail/.env

Do not duplicate secrets into chat unless necessary. Read them from .env on the server.

Important Fix Already Applied

The Acelle installer showed:

MySQLi extension is required
IMAP extension is required

Fix applied in acelle-deploy/Dockerfile:

docker-php-ext-configure imap --with-kerberos --with-imap-ssl

Rebuild command used:

ssh -i /private/tmp/codex_coolify_opencode_ed25519 root@159.223.130.156 'cd /opt/acellemail && docker compose up -d --build acelle'

Verification succeeded:

ssh -i /private/tmp/codex_coolify_opencode_ed25519 root@159.223.130.156 'cd /opt/acellemail && docker compose ps && docker compose exec -T acelle php -m | grep -Ei "mysqli|imap" && curl -I --max-time 10 http://127.0.0.1:8088/install'

Observed result:

Do Not Accidentally Delete

Do not run this unless explicitly intended and confirmed:

docker compose down -v

It removes Docker volumes, including MySQL data.

One docker compose down -v was run earlier only before Acelle installation, while the database was still disposable, to recover from a MySQL 8.4 startup option issue. After the Acelle installer work began, volumes were not removed.

MySQL 8.4 Note

MySQL 8.4 rejected:

--default-authentication-plugin=mysql_native_password

That option was removed from compose. The database was recreated once before installation progress existed.

Queue / Scheduler Note

Before Acelle installation, queue and scheduler workers were disabled in supervisor because database tables such as jobs, sessions, and settings did not exist yet.

Temporary pre-install settings:

After the user completes the Acelle installer, likely next step:

  1. Confirm installer completed.
  2. Re-enable Acelle worker/scheduler in docker/supervisord.conf.
  3. Consider switching to database-backed queue/session if Acelle expects it after migrations:
    • QUEUE_CONNECTION=database
    • SESSION_DRIVER=database
  4. Sync overlay and restart:
rsync -av -e 'ssh -i /private/tmp/codex_coolify_opencode_ed25519' acelle-deploy/ root@159.223.130.156:/opt/acellemail/
ssh -i /private/tmp/codex_coolify_opencode_ed25519 root@159.223.130.156 'cd /opt/acellemail && docker compose up -d --build acelle'

Listmonk Context

User also had a Listmonk instance in Coolify.

The page opened:

http://listmonk-vaoffl6dwzxt9yytajmyi4zk.159.223.130.156.sslip.io:9000

User said login/page worked and planned to configure it manually.

No further Listmonk changes are captured in this handoff.

LibreChat / OpenCode Context

Earlier in the session, user configured LibreChat in Coolify to use OpenCode as a custom endpoint.

LibreChat config inserted into the small Editor content textarea:

version: 1.2.1

cache: true

endpoints:
  custom:
    - name: "OpenCode"
      apiKey: "${OPENCODE_API_KEY}"
      baseURL: "https://opencode.ai/zen/go/v1"
      models:
        default:
          - "kimi-k2.6"
          - "glm-5.1"
          - "deepseek-v4-pro"
          - "deepseek-v4-flash"
      titleConvo: true
      titleModel: "kimi-k2.6"

Environment variable needed in Coolify:

OPENCODE_API_KEY

Notes:

Current Best Next Step

If continuing Acelle:

  1. Open:
http://159.223.130.156:8088/install
  1. Continue the installer.
  2. If another compatibility error appears, check modules:
ssh -i /private/tmp/codex_coolify_opencode_ed25519 root@159.223.130.156 'cd /opt/acellemail && docker compose exec -T acelle php -m'
  1. If install finishes, re-enable queue/scheduler as described above.