Discord bot providing live killmails and intel for the game EVE Online.
10K+
This project and Docker repository is no longer actively maintained or supported. See The Future of Insight document for reasoning and an FAQ. Thank you all for supporting and enjoying Insight over the years!
Fly safe o7
Insight Discord bot for EVE Online.
Dockerfile linksWhere to get help:
Where to file issues:
Insight provides EVE Online killmail streaming for Discord. Insight can stream personal or corporate killboards, detect supercapitals with a proximity radar, and more! Killmails and intel are presented in Discord rich embeds containing relevant links and images to quickly identify important information.
Insight instanceThis Docker image uses volumes to persist the Database.db and config file. See volumes for information about Docker volumes.
docker run --name insight -it --rm nathanls/insight
docker pull nathanls/insight && docker run --name insight -it --rm nathanls/insight
docker stack deploy or docker-composeExample stack.yml for insight:
version: '3.1'
services:
insight:
image: nathanls/insight:latest
deploy:
mode: replicated
replicas: 1
restart_policy:
condition: any
environment:
DB_DRIVER: "sqlite3"
SQLITE_DB_PATH: "Database.db"
HEADERS_FROM_EMAIL: "YourEmailHere"
DISCORD_TOKEN: "DiscordBotTokenHere"
CCP_CLIENT_ID: "YourDevAppInfoHere"
CCP_SECRET_KEY: "YourDevAppInfoHere"
CCP_CALLBACK_URL: "https://github.eveinsight.net/Insight/callback/index.html"
REDIS_HOST: "redis"
REDIS_PORT: 6379
REDIS_PASSWORD: "pass"
REDIS_PURGE: "FALSE"
REDIS_SSL: "FALSE"
INSIGHT_ADMINS: "YourDiscordPublicUserID; AnotherAdminUserID"
WEBSERVER_ENABLED: "FALSE"
volumes:
- insight-data:/app
networks:
- insight-net
redis:
image: redis:6
deploy:
mode: replicated
replicas: 1
restart_policy:
condition: any
networks:
- insight-net
command: --requirepass "pass"
networks:
insight-net:
driver: overlay
volumes:
insight-data:
DISCORD_TOKEN environmental variable.https://github.eveinsight.net/Insight/callback if you don't plan on personally hosting a callback landing page.
Insight/callback/index.html.CCP_CLIENT_ID, CCP_SECRET_KEY, and CCP_CALLBACK_URL environmental variables.This Docker repository utilizes automated builds. The Docker images are automatically updated whenever there are new commits to the Git repo. You can update your image locally by running a pull command and restarting the Docker container:
docker pull nathanls/insight
There is no need to manually update the SDE or any files associated with the Insight build as the latest dependencies are all included within the image.
https://discordapp.com/api/oauth2/authorize?client_id=YourClientIDHere&permissions=149504&scope=bot
or
The follow section details available environmental variables that can be passed to modify Insight behavior.
Not all variables are listed here as they cover niche use cases. See Dockerfile and ConfigLoader.py for an idea of all available env variables.
DB_DRIVERThe database driver to use. Can be sqlite3 or postgres.
If this is sqlite3 then a sqlite database is stored in the container /app directory.
If this is postgres then you must also set the POSTGRES_HOST, POSTGRES_USER, POSTGRES_DB, and POSTGRES_PORT variables.
SQLITE_DB_PATHOptional path to the SQLITE database if using the sqlite3 driver.
HEADERS_FROM_EMAILEmail address to include in request headers from Insight when contacting APIs. This should be an email of the bot admin for API managers to contact for service abuse or issues.
DISCORD_TOKENThe Discord bot token from Discord Apps.
CCP_CLIENT_IDThe CCP application ID obtained from EVE App Developers.
CCP_SECRET_KEYThe CCP application secret key obtained from EVE App Developers.
CCP_CALLBACK_URLThe CCP application callback URL obtained from EVE App Developers.
CLEAR_TOKEN_TABLE_ON_ERRORSet to TRUE to drop the token table if Insight is unable to read it with the stored encryption key.
Set to FALSE to make Insight exit with error without modifying the token table when unable to read it.
DISCORDBOTS_APIKEYOptional DiscordBots API key for server count metrics and stats.
INSIGHT_ENCRYPTION_KEYOptionally set the encryption key through this env var if you don't plan on storing the encryption key through a Docker volume.
Leaving this value blank will look for the key written to /app and create it if it does not exist.
INSIGHT_STATUS_CPUMEMSet to TRUE to update bot "Watching" activity with CPU and memory stats, otherwise don't display this metric.
INSIGHT_STATUS_FEEDCOUNTSet to TRUE to update bot "Watching" activity with feed count stats, otherwise don't display this metric.
INSIGHT_STATUS_TIMESet to TRUE to update bot "Watching" activity with delay / time stats, otherwise don't display this metric.
LIMITER_* variablesThe following are all rate limiter variables and modify the rate limiting behavior of Insight based on buckets.
All values are integers. See https://wiki.eveinsight.net/en/user/limits for more info.
METRIC_LIMITER_MAXMax lines to display in ticket limiter overview output.
REDIS_HOSTThe Redis hostname for caching.
REDIS_PORTThe Redis port for caching.
REDIS_PASSWORDThe Redis password for caching.
REDIS_DBThe Redis DB for caching.
REDIS_PURGEIf TRUE the Redis DB is purged on every Insight start.
REDIS_TIMEOUTRedis connection timeout.
REDIS_SSLIf set to TRUE, require SSL connections to the Redis database.
POSTGRES_HOSTThe DNS hostname of the Postgres cluster.
POSTGRES_USERThe postgres user that has read/write access to the database.
POSTGRES_PASSWORDThe target postgres user password.
POSTGRES_DBThe target database name residing on POSTGRES_HOST.
POSTGRES_PORTThe target database port. Defaults to 5432.
INSIGHT_ADMINSDiscord user IDs of users who will have Insight admin permissions separated by ";".
REIMPORT_* variablesThe following variables control when to reimport data from ESI. All values are integers.
WEBSERVER_ENABLEDIf set to TRUE the callback listener will operate as a webserver and open the port set by WEBSERVER_PORT to receive callbacks.
If set to FALSE the webserver component is not started.
WEBSERVER_INTERFACEWebserver interface IP or hostname.
WEBSERVER_PORTThe webserver port.
CALLBACK_REDIRECT_SUCCESSCallback URL to redirect to after successful callback.
View license for Insight.
EVE Online and the EVE logo are the registered trademarks of CCP hf. All rights are reserved worldwide. All other trademarks are the property of their respective owners. EVE Online, the EVE logo, EVE and all associated logos and designs are the intellectual property of CCP hf. All artwork, screenshots, characters, vehicles, storylines, world facts or other recognizable features of the intellectual property relating to these trademarks are likewise the intellectual property of CCP hf.
CCP hf. has granted permission to Insight to use EVE Online and all associated logos and designs for promotional and information purposes on its website but does not endorse, and is not in any way affiliated with, Insight. CCP is in no way responsible for the content on or functioning of this website, nor can it be liable for any damage arising from the use of this website.
Content type
Image
Digest
Size
784.9 MB
Last updated
over 4 years ago
docker pull nathanls/insight