Created
January 7, 2025 06:01
-
-
Save eastoncrafter/910c0c8b07603e237ecffa310875bb04 to your computer and use it in GitHub Desktop.
Changedetection.io docker compose (comes with free memory leak) [killed my docker server]
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
version: '3.2' | |
services: | |
changedetection: | |
image: ghcr.io/dgtlmoon/changedetection.io | |
container_name: changedetection | |
hostname: changedetection | |
volumes: | |
- changedetection-data:/datastore | |
# Configurable proxy list support, see https://github.com/dgtlmoon/changedetection.io/wiki/Proxy-configuration#proxy-list-support | |
# - ./proxies.json:/datastore/proxies.json | |
environment: | |
# Default listening port, can also be changed with the -p option | |
# - PORT=5000 | |
# - PUID=1000 | |
# - PGID=1000 | |
# | |
# Alternative WebDriver/selenium URL, do not use "'s or 's! | |
- WEBDRIVER_URL=http://browser-chrome:4444/wd/hub | |
# | |
# WebDriver proxy settings webdriver_proxyType, webdriver_ftpProxy, webdriver_noProxy, | |
# webdriver_proxyAutoconfigUrl, webdriver_autodetect, | |
# webdriver_socksProxy, webdriver_socksUsername, webdriver_socksVersion, webdriver_socksPassword | |
# | |
# https://selenium-python.readthedocs.io/api.html#module-selenium.webdriver.common.proxy | |
# | |
# Alternative Playwright URL, do not use "'s or 's! | |
- PLAYWRIGHT_DRIVER_URL=ws://playwright-chrome:3000/?stealth=1&--disable-web-security=true | |
# | |
# Playwright proxy settings playwright_proxy_server, playwright_proxy_bypass, playwright_proxy_username, playwright_proxy_password | |
# | |
# https://playwright.dev/python/docs/api/class-browsertype#browser-type-launch-option-proxy | |
# | |
# Plain requests - proxy support example. | |
# - HTTP_PROXY=socks5h://10.10.1.10:1080 | |
# - HTTPS_PROXY=socks5h://10.10.1.10:1080 | |
# | |
# An exclude list (useful for notification URLs above) can be specified by with | |
# - NO_PROXY="localhost,192.168.0.0/24" | |
# | |
# Base URL of your changedetection.io install (Added to the notification alert) | |
# - BASE_URL=https://mysite.com | |
# Respect proxy_pass type settings, `proxy_set_header Host "localhost";` and `proxy_set_header X-Forwarded-Prefix /app;` | |
# More here https://github.com/dgtlmoon/changedetection.io/wiki/Running-changedetection.io-behind-a-reverse-proxy-sub-directory | |
# - USE_X_SETTINGS=1 | |
# | |
# Hides the `Referer` header so that monitored websites can't see the changedetection.io hostname. | |
# - HIDE_REFERER=true | |
# | |
# Default number of parallel/concurrent fetchers | |
# - FETCH_WORKERS=10 | |
# Comment out ports: when using behind a reverse proxy , enable networks: etc. | |
ports: | |
- 5001:5000 | |
restart: unless-stopped | |
# Used for fetching pages via WebDriver+Chrome where you need Javascript support. | |
# Now working on arm64 (needs testing on rPi - tested on Oracle ARM instance) | |
# replace image with seleniarm/standalone-chromium:4.0.0-20211213 | |
# If WEBDRIVER or PLAYWRIGHT are enabled, changedetection container depends on that | |
# and must wait before starting (substitute "browser-chrome" with "playwright-chrome" if last one is used) | |
# depends_on: | |
# browser-chrome: | |
# condition: service_started | |
browser-chrome: | |
hostname: browser-chrome | |
image: selenium/standalone-chrome:4 | |
environment: | |
- VNC_NO_PASSWORD=1 | |
- SCREEN_WIDTH=1920 | |
- SCREEN_HEIGHT=1080 | |
- SCREEN_DEPTH=24 | |
volumes: | |
# Workaround to avoid the browser crashing inside a docker container | |
# See https://github.com/SeleniumHQ/docker-selenium#quick-start | |
- /dev/shm:/dev/shm | |
restart: unless-stopped | |
# Used for fetching pages via Playwright+Chrome where you need Javascript support. | |
# Note: Playwright/browserless not supported on ARM type devices (rPi etc) | |
playwright-chrome: | |
hostname: playwright-chrome | |
image: browserless/chrome | |
restart: unless-stopped | |
environment: | |
- SCREEN_WIDTH=1920 | |
- SCREEN_HEIGHT=1024 | |
- SCREEN_DEPTH=16 | |
- ENABLE_DEBUGGER=false | |
- PREBOOT_CHROME=true | |
- CONNECTION_TIMEOUT=300000 | |
- MAX_CONCURRENT_SESSIONS=10 | |
- CHROME_REFRESH_TIME=600000 | |
- DEFAULT_BLOCK_ADS=true | |
- DEFAULT_STEALTH=true | |
Ignore HTTPS errors, like for self-signed certs | |
- DEFAULT_IGNORE_HTTPS_ERRORS=true | |
volumes: | |
changedetection-data: |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment