Namespace
zhulinsen
Image / Tag
daily_stock_analysis:sha-71501d6873b21fd30247ab35302120ec122bfd4f
Content Digest
sha256:c7a767d680be5e6eee7c8428381505b35575eadbcd3c90480d8f83691069e929
Details
Created

2026-05-16 07:52:51 UTC

Size

424 MB

Content Digest
Labels
  • org.opencontainers.image.created
    2026-05-16T07:49:12.090Z
  • org.opencontainers.image.description
    LLM驱动的 A/H/美股智能分析:多数据源行情 + 实时新闻 + LLM决策仪表盘 + 多渠道推送,零成本定时运行,纯白嫖. LLM-powered stock analysis system for A/H/US markets.
  • org.opencontainers.image.licenses
    MIT
  • org.opencontainers.image.revision
    71501d6873b21fd30247ab35302120ec122bfd4f
  • org.opencontainers.image.source
    https://github.com/ZhuLinsen/daily_stock_analysis
  • org.opencontainers.image.title
    daily_stock_analysis
  • org.opencontainers.image.url
    https://github.com/ZhuLinsen/daily_stock_analysis
  • org.opencontainers.image.version
    v3.17.1

Environment
API_PORT

8000

DATABASE_PATH

/app/data/stock_analysis.db

GPG_KEY

A035C8C19219BA821ECEA86B64E628F8D684696D

LANG

C.UTF-8

LOG_DIR

/app/logs

PATH

/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PYTHONUNBUFFERED

1

PYTHON_SHA256

272179ddd9a2e41a0fc8e42e33dfbdca0b3711aa5abf372d3f2d51543d09b625

PYTHON_VERSION

3.11.15

TZ

Asia/Shanghai

WEBUI_HOST

0.0.0.0


Layers

[#000] sha256:9b02e9fcb40102eae20d9d1fc7594b44328f4a3eb9b8a3bdb7db283d10840a30 - 6.35% (26.9 MB)

[#001] sha256:5fa9f9023c119af4548a19b8cbc816155977df7ee7b91cf4cc7635f13f4c1129 - 0.79% (3.35 MB)

[#002] sha256:241f8c4726c5f94524031fef38f7c9b11bdbbf323915eb6ec0d3fe546fd570b8 - 3.58% (15.2 MB)

[#003] sha256:fa6dbb652d7ab9a11ac4e11ebd1dce9b7ef1be66628e541674e0b48b5d19d861 - 0.0% (250 Bytes)

[#004] sha256:a827684c58b9a8de9db236eaaa9744043cc1183a86c3e875c1cb77045e7f2c18 - 0.0% (91 Bytes)

[#005] sha256:a18c5e48c80c9fe3fc99ff9740fd90d3c7a7d077319e534d53da7178024a39f1 - 0.0% (193 Bytes)

[#006] sha256:2496a8a61c9b1dc2e626405c4d1e2b98e52d15b457cbb384ece3f9856210c276 - 41.67% (177 MB)

[#007] sha256:8a148f5405e921d0d923636b1864195126f74dfe42fc65f95333dc17486f4234 - 0.0% (3.24 KB)

[#008] sha256:1b2576171978dc48ad84347e9c1e9ebbd92eadd79364aca559598eb46831c786 - 0.0% (1.94 KB)

[#009] sha256:7233cf71923ac6b8cbcbd248c467f1b7072d5a135989d889b7b7d7bf0a2912a2 - 46.16% (196 MB)

[#010] sha256:0ff80b1de29e0853ff4f4e519b2992eb94cecf1e5e0e879cb2ad7becb9df5ccf - 0.0% (11.3 KB)

[#011] sha256:ad853750516432032b5afcf663324b042b6d60db31e47e99142d57e579988f30 - 0.04% (162 KB)

[#012] sha256:3722dca38dbab95b877cec119a8e586e787cfed4f9df419966140c64031e2356 - 0.07% (321 KB)

[#013] sha256:6c62d3e2b107a2a6204344016934a583e9785c156e1886bc82952bf15eeb1334 - 0.03% (148 KB)

[#014] sha256:e56c4b245b906e51d3022af6f6f3c87e83bc8210579e59ddfb44c0eae2ddcbe0 - 0.34% (1.44 MB)

[#015] sha256:cc21b8880b43dc2653d8683e16e77418382b252e59af68c80da29f230f210a6e - 0.0% (10.7 KB)

[#016] sha256:b7611a2e37aed49467370d81289d0c3548fc0328a0558a019b4e46ba3fc8e343 - 0.23% (993 KB)

[#017] sha256:2eeb407ff76bc1b263b111cea56b69756529db7a071cf9be6bc7797d1ce457d4 - 0.0% (1.02 KB)

[#018] sha256:1629b77d3585c25f672d24d751ac8a0164040bb46a5bbcce1ae5a50c38a3169d - 0.72% (3.05 MB)


History
2026-05-05 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'amd64' out/ 'bookworm' '@1777939200'

2026-05-08 20:02:05 UTC (buildkit.dockerfile.v0)

ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-05-08 20:02:05 UTC (buildkit.dockerfile.v0)

ENV LANG=C.UTF-8

2026-05-08 20:02:05 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates netbase tzdata ; rm -rf /var/lib/apt/lists/* # buildkit

2026-05-08 20:02:05 UTC (buildkit.dockerfile.v0)

ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D

2026-05-08 20:02:05 UTC (buildkit.dockerfile.v0)

ENV PYTHON_VERSION=3.11.15

2026-05-08 20:02:05 UTC (buildkit.dockerfile.v0)

ENV PYTHON_SHA256=272179ddd9a2e41a0fc8e42e33dfbdca0b3711aa5abf372d3f2d51543d09b625

2026-05-08 20:10:49 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends dpkg-dev gcc gnupg libbluetooth-dev libbz2-dev libc6-dev libdb-dev libffi-dev libgdbm-dev liblzma-dev libncursesw5-dev libreadline-dev libsqlite3-dev libssl-dev make tk-dev uuid-dev wget xz-utils zlib1g-dev ; wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; gpg --batch --verify python.tar.xz.asc python.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME" python.tar.xz.asc; mkdir -p /usr/src/python; tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; rm python.tar.xz; cd /usr/src/python; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --enable-loadable-sqlite-extensions --enable-optimizations --enable-option-checking=fatal --enable-shared $(test "${gnuArch%%-*}" != 'riscv64' && echo '--with-lto') --with-ensurepip ; nproc="$(nproc)"; EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; LDFLAGS="$(dpkg-buildflags --get LDFLAGS)"; LDFLAGS="${LDFLAGS:-} -Wl,--strip-all"; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-}" ; rm python; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-} -Wl,-rpath='\$\$ORIGIN/../lib'" python ; make install; cd /; rm -rf /usr/src/python; find /usr/local -depth \( \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name 'libpython*.a' \) \) \) -exec rm -rf '{}' + ; ldconfig; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; export PYTHONDONTWRITEBYTECODE=1; python3 --version; pip3 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==79.0.1' 'wheel<0.46' ; pip3 --version # buildkit

2026-05-08 20:10:49 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; for src in idle3 pip3 pydoc3 python3 python3-config; do dst="$(echo "$src" | tr -d 3)"; [ -s "/usr/local/bin/$src" ]; [ ! -e "/usr/local/bin/$dst" ]; ln -svT "$src" "/usr/local/bin/$dst"; done # buildkit

2026-05-08 20:10:49 UTC (buildkit.dockerfile.v0)

CMD ["python3"]

2026-05-16 07:50:58 UTC (buildkit.dockerfile.v0)

WORKDIR /app

2026-05-16 07:50:59 UTC (buildkit.dockerfile.v0)

ENV TZ=Asia/Shanghai

2026-05-16 07:50:59 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # buildkit

2026-05-16 07:51:28 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends gcc curl gosu wkhtmltopdf fontconfig libjpeg62-turbo libxrender1 libxext6 && rm -rf /var/lib/apt/lists/* # buildkit

2026-05-16 07:51:28 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c groupadd -g 1000 dsa && useradd -u 1000 -g dsa -m dsa # buildkit

2026-05-16 07:51:28 UTC (buildkit.dockerfile.v0)

COPY requirements.txt . # buildkit

2026-05-16 07:52:50 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c pip install --no-cache-dir -r requirements.txt # buildkit

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

COPY *.py ./ # buildkit

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

COPY api/ ./api/ # buildkit

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

COPY data_provider/ ./data_provider/ # buildkit

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

COPY bot/ ./bot/ # buildkit

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

COPY src/ ./src/ # buildkit

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

COPY strategies/ ./strategies/ # buildkit

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

COPY /app/static ./static/ # buildkit

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

COPY docker/entrypoint.sh /usr/local/bin/docker-entrypoint.sh # buildkit

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c mkdir -p /app/data /app/logs /app/reports && chown -R dsa:dsa /app && chmod +x /usr/local/bin/docker-entrypoint.sh # buildkit

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

ENV PYTHONUNBUFFERED=1

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

ENV LOG_DIR=/app/logs

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

ENV DATABASE_PATH=/app/data/stock_analysis.db

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

ENV WEBUI_HOST=0.0.0.0

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

ENV API_PORT=8000

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

EXPOSE [8000/tcp]

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

VOLUME [/app/data /app/logs /app/reports]

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

HEALTHCHECK &{["CMD-SHELL" "curl -f http://localhost:8000/api/health || curl -f http://localhost:8000/health || python -c \"import sys; sys.exit(0)\""] "30s" "10s" "10s" "0s" '\x03'}

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"]

2026-05-16 07:52:51 UTC (buildkit.dockerfile.v0)

CMD ["python" "main.py" "--schedule"]

Details
Created

2026-05-16 08:02:54 UTC

Size

413 MB

Content Digest
Labels
  • org.opencontainers.image.created
    2026-05-16T07:49:12.090Z
  • org.opencontainers.image.description
    LLM驱动的 A/H/美股智能分析:多数据源行情 + 实时新闻 + LLM决策仪表盘 + 多渠道推送,零成本定时运行,纯白嫖. LLM-powered stock analysis system for A/H/US markets.
  • org.opencontainers.image.licenses
    MIT
  • org.opencontainers.image.revision
    71501d6873b21fd30247ab35302120ec122bfd4f
  • org.opencontainers.image.source
    https://github.com/ZhuLinsen/daily_stock_analysis
  • org.opencontainers.image.title
    daily_stock_analysis
  • org.opencontainers.image.url
    https://github.com/ZhuLinsen/daily_stock_analysis
  • org.opencontainers.image.version
    v3.17.1

Environment
API_PORT

8000

DATABASE_PATH

/app/data/stock_analysis.db

GPG_KEY

A035C8C19219BA821ECEA86B64E628F8D684696D

LANG

C.UTF-8

LOG_DIR

/app/logs

PATH

/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

PYTHONUNBUFFERED

1

PYTHON_SHA256

272179ddd9a2e41a0fc8e42e33dfbdca0b3711aa5abf372d3f2d51543d09b625

PYTHON_VERSION

3.11.15

TZ

Asia/Shanghai

WEBUI_HOST

0.0.0.0


Layers

[#000] sha256:6a2d07df495cc055bce0251fe801ee08db90750f52e43a555be5dfd8f5023783 - 6.49% (26.8 MB)

[#001] sha256:5e9c15780ee7fc44a80269097c3b6cef5dd508596f37d6248c701540d2f7222e - 0.77% (3.2 MB)

[#002] sha256:7fbff173143e63bea16ce488fb38359ee25e883e7940e0b451b2d05bbd930935 - 3.66% (15.1 MB)

[#003] sha256:58781310210e5c99c9486c8dd627e42c728450c70baf2dc1d83f8cd1dbe2fc3f - 0.0% (250 Bytes)

[#004] sha256:eda07871c8a4a7ac1772c47bc07c25bc5f9e26f62a25378c481e00385245bd7e - 0.0% (91 Bytes)

[#005] sha256:a18c5e48c80c9fe3fc99ff9740fd90d3c7a7d077319e534d53da7178024a39f1 - 0.0% (193 Bytes)

[#006] sha256:f9fcff200f76e048907b33f2da5fc8c534c69582eb1ccb183bd29ae3e79f2470 - 41.09% (170 MB)

[#007] sha256:21e0441f59e4ae7cf58e40f1de75fb7b967c6dff2ea7bd5c6cd075389de7ee4c - 0.0% (3.24 KB)

[#008] sha256:5bf3602f3b5f2dd48c9e52b9107831fde406ce15b5e0107c5b7d641ee171bbcf - 0.0% (1.95 KB)

[#009] sha256:b3f076c414c5ee5871891b7382aa8e16384cc13da39f8eae0f00d36608b2e3b0 - 46.51% (192 MB)

[#010] sha256:93d3df908b80e88a9b81deda189811fc9963e650e76ad292857f975e86329235 - 0.0% (11.3 KB)

[#011] sha256:2abb14bb8a97bd33703c6959d60b43f4a7bb969e2e091fa462dad9b08747419f - 0.04% (162 KB)

[#012] sha256:daa7ebf5c55110b58d2d0ee61e213ce0745436afc2058d9c96d78b15472e4f6a - 0.08% (321 KB)

[#013] sha256:2142873414b3391cc44d2cdf100a15a1c2ecbf9c107115922924a2ab669ba002 - 0.03% (148 KB)

[#014] sha256:106ab831caf491eeadfbde47b4724179a2de3217e7cd282fc7160e02dee79e12 - 0.35% (1.44 MB)

[#015] sha256:28113db692cd784fc18bd67f64829fc34b9e61cfdd8f9194206500ca155d1394 - 0.0% (10.7 KB)

[#016] sha256:51fd2b49238701a05822ea18db6931b091457449b94c01842dcd0e25c9ebcaaf - 0.23% (993 KB)

[#017] sha256:61021567d737c8b4d549de00eb5c3779376be5b6eabd2a545d2f6de2a675ba2a - 0.0% (1.02 KB)

[#018] sha256:79cb16164645837942da26f5fb57b098d2ae2782ece7595f39c7724d05a3bfcf - 0.74% (3.05 MB)


History
2026-05-05 00:00:00 UTC (debuerreotype 0.17)

# debian.sh --arch 'arm64' out/ 'bookworm' '@1777939200'

2026-05-08 20:04:05 UTC (buildkit.dockerfile.v0)

ENV PATH=/usr/local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-05-08 20:04:05 UTC (buildkit.dockerfile.v0)

ENV LANG=C.UTF-8

2026-05-08 20:04:05 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates netbase tzdata ; rm -rf /var/lib/apt/lists/* # buildkit

2026-05-08 20:04:05 UTC (buildkit.dockerfile.v0)

ENV GPG_KEY=A035C8C19219BA821ECEA86B64E628F8D684696D

2026-05-08 20:04:05 UTC (buildkit.dockerfile.v0)

ENV PYTHON_VERSION=3.11.15

2026-05-08 20:04:05 UTC (buildkit.dockerfile.v0)

ENV PYTHON_SHA256=272179ddd9a2e41a0fc8e42e33dfbdca0b3711aa5abf372d3f2d51543d09b625

2026-05-08 20:15:22 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends dpkg-dev gcc gnupg libbluetooth-dev libbz2-dev libc6-dev libdb-dev libffi-dev libgdbm-dev liblzma-dev libncursesw5-dev libreadline-dev libsqlite3-dev libssl-dev make tk-dev uuid-dev wget xz-utils zlib1g-dev ; wget -O python.tar.xz "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz"; echo "$PYTHON_SHA256 *python.tar.xz" | sha256sum -c -; wget -O python.tar.xz.asc "https://www.python.org/ftp/python/${PYTHON_VERSION%%[a-z]*}/Python-$PYTHON_VERSION.tar.xz.asc"; GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; gpg --batch --keyserver hkps://keys.openpgp.org --recv-keys "$GPG_KEY"; gpg --batch --verify python.tar.xz.asc python.tar.xz; gpgconf --kill all; rm -rf "$GNUPGHOME" python.tar.xz.asc; mkdir -p /usr/src/python; tar --extract --directory /usr/src/python --strip-components=1 --file python.tar.xz; rm python.tar.xz; cd /usr/src/python; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; ./configure --build="$gnuArch" --enable-loadable-sqlite-extensions --enable-optimizations --enable-option-checking=fatal --enable-shared $(test "${gnuArch%%-*}" != 'riscv64' && echo '--with-lto') --with-ensurepip ; nproc="$(nproc)"; EXTRA_CFLAGS="$(dpkg-buildflags --get CFLAGS)"; LDFLAGS="$(dpkg-buildflags --get LDFLAGS)"; LDFLAGS="${LDFLAGS:-} -Wl,--strip-all"; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-}" ; rm python; make -j "$nproc" "EXTRA_CFLAGS=${EXTRA_CFLAGS:-}" "LDFLAGS=${LDFLAGS:-} -Wl,-rpath='\$\$ORIGIN/../lib'" python ; make install; cd /; rm -rf /usr/src/python; find /usr/local -depth \( \( -type d -a \( -name test -o -name tests -o -name idle_test \) \) -o \( -type f -a \( -name '*.pyc' -o -name '*.pyo' -o -name 'libpython*.a' \) \) \) -exec rm -rf '{}' + ; ldconfig; apt-mark auto '.*' > /dev/null; apt-mark manual $savedAptMark; find /usr/local -type f -executable -not \( -name '*tkinter*' \) -exec ldd '{}' ';' | awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); printf "*%s\n", so }' | sort -u | xargs -rt dpkg-query --search | awk 'sub(":$", "", $1) { print $1 }' | sort -u | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; export PYTHONDONTWRITEBYTECODE=1; python3 --version; pip3 install --disable-pip-version-check --no-cache-dir --no-compile 'setuptools==79.0.1' 'wheel<0.46' ; pip3 --version # buildkit

2026-05-08 20:15:22 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; for src in idle3 pip3 pydoc3 python3 python3-config; do dst="$(echo "$src" | tr -d 3)"; [ -s "/usr/local/bin/$src" ]; [ ! -e "/usr/local/bin/$dst" ]; ln -svT "$src" "/usr/local/bin/$dst"; done # buildkit

2026-05-08 20:15:22 UTC (buildkit.dockerfile.v0)

CMD ["python3"]

2026-05-16 07:50:58 UTC (buildkit.dockerfile.v0)

WORKDIR /app

2026-05-16 07:50:59 UTC (buildkit.dockerfile.v0)

ENV TZ=Asia/Shanghai

2026-05-16 07:50:59 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # buildkit

2026-05-16 07:54:08 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends gcc curl gosu wkhtmltopdf fontconfig libjpeg62-turbo libxrender1 libxext6 && rm -rf /var/lib/apt/lists/* # buildkit

2026-05-16 07:54:08 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c groupadd -g 1000 dsa && useradd -u 1000 -g dsa -m dsa # buildkit

2026-05-16 07:54:08 UTC (buildkit.dockerfile.v0)

COPY requirements.txt . # buildkit

2026-05-16 08:02:53 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c pip install --no-cache-dir -r requirements.txt # buildkit

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

COPY *.py ./ # buildkit

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

COPY api/ ./api/ # buildkit

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

COPY data_provider/ ./data_provider/ # buildkit

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

COPY bot/ ./bot/ # buildkit

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

COPY src/ ./src/ # buildkit

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

COPY strategies/ ./strategies/ # buildkit

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

COPY /app/static ./static/ # buildkit

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

COPY docker/entrypoint.sh /usr/local/bin/docker-entrypoint.sh # buildkit

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c mkdir -p /app/data /app/logs /app/reports && chown -R dsa:dsa /app && chmod +x /usr/local/bin/docker-entrypoint.sh # buildkit

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

ENV PYTHONUNBUFFERED=1

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

ENV LOG_DIR=/app/logs

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

ENV DATABASE_PATH=/app/data/stock_analysis.db

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

ENV WEBUI_HOST=0.0.0.0

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

ENV API_PORT=8000

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

EXPOSE [8000/tcp]

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

VOLUME [/app/data /app/logs /app/reports]

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

HEALTHCHECK &{["CMD-SHELL" "curl -f http://localhost:8000/api/health || curl -f http://localhost:8000/health || python -c \"import sys; sys.exit(0)\""] "30s" "10s" "10s" "0s" '\x03'}

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"]

2026-05-16 08:02:54 UTC (buildkit.dockerfile.v0)

CMD ["python" "main.py" "--schedule"]

Danger Zone
Delete Tag

Please be careful as this will not just delete the reference but also the actual content!

For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.

Delete