2021-05-15 01:48:38 +00:00
services :
2022-03-12 07:18:15 +00:00
changedetection :
2021-10-06 11:07:56 +00:00
image : ghcr.io/dgtlmoon/changedetection.io
2022-03-17 18:59:37 +00:00
container_name : changedetection
2022-03-12 07:18:15 +00:00
hostname : changedetection
2021-05-15 08:20:34 +00:00
volumes :
- changedetection-data:/datastore
2022-09-19 11:14:35 +00:00
# Configurable proxy list support, see https://github.com/dgtlmoon/changedetection.io/wiki/Proxy-configuration#proxy-list-support
# - ./proxies.json:/datastore/proxies.json
2021-08-12 10:05:59 +00:00
2021-05-15 08:20:34 +00:00
# environment:
2025-04-12 17:26:17 +00:00
# Default listening port, can also be changed with the -p option (not to be confused with ports: below)
2021-07-26 05:10:57 +00:00
# - PORT=5000
2021-12-28 16:07:41 +00:00
#
2024-01-16 08:48:16 +00:00
# Log levels are in descending order. (TRACE is the most detailed one)
# Log output levels: TRACE, DEBUG(default), INFO, SUCCESS, WARNING, ERROR, CRITICAL
2024-09-02 11:20:44 +00:00
# - LOGGER_LEVEL=TRACE
2024-01-16 08:48:16 +00:00
#
2025-04-12 17:26:17 +00:00
#
# Uncomment below and the "sockpuppetbrowser" to use a real Chrome browser (It uses the "playwright" protocol)
# - PLAYWRIGHT_DRIVER_URL=ws://browser-sockpuppet-chrome:3000
#
#
# Alternative WebDriver/selenium URL, do not use "'s or 's! (old, deprecated, does not support screenshots very well)
# - WEBDRIVER_URL=http://browser-selenium-chrome:4444/wd/hub
2021-12-28 16:07:41 +00:00
#
2022-05-07 14:37:56 +00:00
# WebDriver proxy settings webdriver_proxyType, webdriver_ftpProxy, webdriver_noProxy,
# webdriver_proxyAutoconfigUrl, webdriver_autodetect,
2021-12-31 09:48:11 +00:00
# webdriver_socksProxy, webdriver_socksUsername, webdriver_socksVersion, webdriver_socksPassword
2021-12-28 16:07:41 +00:00
#
# https://selenium-python.readthedocs.io/api.html#module-selenium.webdriver.common.proxy
#
2022-05-02 19:40:40 +00:00
#
# 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
#
2022-09-09 10:08:01 +00:00
# Plain requests - proxy support example.
2021-08-19 14:55:28 +00:00
# - HTTP_PROXY=socks5h://10.10.1.10:1080
# - HTTPS_PROXY=socks5h://10.10.1.10:1080
2021-12-28 16:07:41 +00:00
#
2021-05-20 23:16:19 +00:00
# An exclude list (useful for notification URLs above) can be specified by with
2021-05-15 08:20:34 +00:00
# - NO_PROXY="localhost,192.168.0.0/24"
2021-12-28 16:07:41 +00:00
#
2021-07-26 05:10:57 +00:00
# Base URL of your changedetection.io install (Added to the notification alert)
2021-08-19 14:55:28 +00:00
# - BASE_URL=https://mysite.com
2021-07-14 04:02:24 +00:00
# Respect proxy_pass type settings, `proxy_set_header Host "localhost";` and `proxy_set_header X-Forwarded-Prefix /app;`
2025-04-16 19:37:50 +00:00
# More here https://github.com/dgtlmoon/changedetection.io/wiki/Running-changedetection.io-behind-a-reverse-proxy
2021-07-14 04:02:24 +00:00
# - USE_X_SETTINGS=1
2022-10-18 07:16:22 +00:00
#
# Hides the `Referer` header so that monitored websites can't see the changedetection.io hostname.
# - HIDE_REFERER=true
2023-08-30 16:02:10 +00:00
#
# Default number of parallel/concurrent fetchers
# - FETCH_WORKERS=10
2024-05-14 11:51:03 +00:00
#
# Absolute minimum seconds to recheck, overrides any watch minimum, change to 0 to disable
# - MINIMUM_SECONDS_RECHECK_TIME=3
2024-10-05 13:33:05 +00:00
#
# If you want to watch local files file:///path/to/file.txt (careful! security implications!)
# - ALLOW_FILE_URI=False
2024-11-10 14:48:05 +00:00
#
# For complete privacy if you don't want to use the 'check version' / telemetry service
# - DISABLE_VERSION_CHECK=true
2024-11-19 14:44:50 +00:00
#
# A valid timezone name to run as (for scheduling watch checking) see https://en.wikipedia.org/wiki/List_of_tz_database_time_zones
# - TZ=America/Los_Angeles
2025-04-09 15:02:44 +00:00
#
# Maximum height of screenshots, default is 16000 px, screenshots will be clipped to this if exceeded.
# RAM usage will be higher if you increase this.
# - SCREENSHOT_MAX_HEIGHT=16000
2025-06-11 07:44:58 +00:00
#
# HTTPS SSL Mode for webserver, unset both of these, you may need to volume mount these files also.
# ./cert.pem:/app/cert.pem and ./privkey.pem:/app/privkey.pem
# - SSL_CERT_FILE=cert.pem
# - SSL_PRIVKEY_FILE=privkey.pem
2025-06-11 10:03:12 +00:00
#
# LISTEN_HOST / "host", Same as -h
# - LISTEN_HOST=::
# - LISTEN_HOST=0.0.0.0
2024-10-05 13:33:05 +00:00
2021-07-14 04:02:24 +00:00
# Comment out ports: when using behind a reverse proxy , enable networks: etc.
2021-05-15 08:20:34 +00:00
ports :
2025-04-29 09:20:00 +00:00
- 127.0 .0 .1 : 5000 : 5000
2021-08-12 10:05:59 +00:00
restart : unless-stopped
# Used for fetching pages via WebDriver+Chrome where you need Javascript support.
2022-01-05 11:20:56 +00:00
# Now working on arm64 (needs testing on rPi - tested on Oracle ARM instance)
# replace image with seleniarm/standalone-chromium:4.0.0-20211213
2022-12-02 15:13:59 +00:00
# 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)
2024-06-28 21:08:37 +00:00
# depends_on:
2025-04-29 09:20:00 +00:00
# browser-sockpuppet-chrome:
2024-06-28 21:08:37 +00:00
# condition: service_started
2021-07-14 04:02:24 +00:00
2024-09-02 11:20:44 +00:00
# Sockpuppetbrowser is basically chrome wrapped in an API for allowing fast fetching of web-pages.
2025-02-19 09:46:22 +00:00
# RECOMMENDED FOR FETCHING PAGES WITH CHROME, be sure to enable the "PLAYWRIGHT_DRIVER_URL" env variable in the main changedetection container
2025-04-12 17:26:17 +00:00
# browser-sockpuppet-chrome:
# hostname: browser-sockpuppet-chrome
2024-02-07 19:58:21 +00:00
# image: dgtlmoon/sockpuppetbrowser:latest
# cap_add:
# - SYS_ADMIN
## SYS_ADMIN might be too much, but it can be needed on your platform https://github.com/puppeteer/puppeteer/blob/main/docs/troubleshooting.md#running-puppeteer-on-gitlabci
2021-08-12 10:05:59 +00:00
# restart: unless-stopped
2022-06-15 21:50:48 +00:00
# environment:
# - SCREEN_WIDTH=1920
# - SCREEN_HEIGHT=1024
# - SCREEN_DEPTH=16
2024-02-07 19:58:21 +00:00
# - MAX_CONCURRENT_CHROME_PROCESSES=10
2023-11-06 21:33:22 +00:00
# Used for fetching pages via Playwright+Chrome where you need Javascript support.
2024-01-31 15:15:43 +00:00
# Note: Works well but is deprecated, does not fetch full page screenshots (doesnt work with Visual Selector)
# Does not report status codes (200, 404, 403) and other issues
2025-04-12 17:26:17 +00:00
# browser-selenium-chrome:
# hostname: browser-selenium-chrome
2023-11-06 21:33:22 +00:00
# image: selenium/standalone-chrome:4
# environment:
# - VNC_NO_PASSWORD=1
# - SCREEN_WIDTH=1920
# - SCREEN_HEIGHT=1080
# - SCREEN_DEPTH=24
2025-04-12 17:26:17 +00:00
# CHROME_OPTIONS: |
# --window-size=1280,1024
# --headless
# --disable-gpu
2023-11-06 21:33:22 +00:00
# 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
2021-05-15 08:20:34 +00:00
volumes :
2021-05-15 01:48:38 +00:00
changedetection-data :
2021-05-15 08:20:34 +00:00