export OPENAI_API_KEY=<key>npm i && npm run dev
sudo yum update -y
sudo yum install -y docker git
sudo service docker start
sudo usermod -a -G docker ec2-user
# Log out and back in, or run:
newgrp dockerRequired if you are using the Jellyfin proxy feature.
echo "GatewayPorts yes" | sudo tee -a /etc/ssh/sshd_config
sudo service sshd restartgit clone https://github.com/VoX/endllmless.git
cd endllmlessdocker build -t endllmless .Replace <your_openai_key> with your actual API key.
docker run -d \
--restart on-failure \
--add-host=host.docker.internal:host-gateway \
-p 80:80 -p 443:443 \
-e OPENAI_API_KEY=<your_openai_key> \
-e JELLY_PATH=<your_secret_path_prefix> \
--name endless \
endllmlessNote:
- The
--add-hostflag is required for Caddy to access services running on the host machine. JELLY_PATHshould be the secret path segment without leading/trailing slashes. on the host machine (like the service on port 8097).
To update the running application with the latest code:
-
Pull the latest changes:
git pull
-
Rebuild the Docker image:
docker build -t endllmless . -
Stop and remove the old container:
docker stop $(docker ps -q --filter name=endless) && docker rm $(docker ps -aq --filter name=endless)
-
Start the new container: (Run the same command as in Step 5 above)
docker run -d \ --restart on-failure \ --add-host=host.docker.internal:host-gateway \ -p 80:80 -p 443:443 \ -e OPENAI_API_KEY=<your_openai_key> \ -e JELLY_PATH=<your_secret_path_prefix> \ --name endless \ endllmless