From 6ce7c257fdb945dacd50afc857515aa4ecd96743 Mon Sep 17 00:00:00 2001 From: "a.sosnoviy" Date: Mon, 21 Oct 2024 21:48:03 +0300 Subject: [PATCH] official docker image --- .dockerignore | 3 +- .env.example | 4 +++ README.md | 9 +++--- docker/Dockerfile | 68 +++++--------------------------------------- docker/entrypoint.sh | 4 --- main.os | 2 +- oscript.cfg.example | 2 +- 7 files changed, 19 insertions(+), 73 deletions(-) create mode 100644 .env.example delete mode 100644 docker/entrypoint.sh diff --git a/.dockerignore b/.dockerignore index 639c09d..77f2d3c 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1 +1,2 @@ -oscript_modules \ No newline at end of file +oscript_modules +.env \ No newline at end of file diff --git a/.env.example b/.env.example new file mode 100644 index 0000000..000c380 --- /dev/null +++ b/.env.example @@ -0,0 +1,4 @@ +GRAFANABOT_TELEGRAMM_TOKEN=12365:jahsJHFhvdgjaJGHF +GRAFANABOT_TELEGRAMM_USERS=66660503,3883884329 +GRAFANABOT_TELEGRAMM_GROUPS=-3455345434,-6786786868 +GRAFANABOT_GRAFANA_URL=http://grafana.local:3000 \ No newline at end of file diff --git a/README.md b/README.md index cdb1218..0d1ec6f 100644 --- a/README.md +++ b/README.md @@ -19,10 +19,11 @@ ### Docker ```bash +opm.bat build && cp grafana2telegramm-bot-*.ospx bot.ospx docker build -t grafanabot -f docker/Dockerfile . docker run \ - -e GRAFANABOT_TELEGRAMM_TOKEN="<12365:jahsJHFhvdgjaJGHF>" \ + -e GRAFANABOT_TELEGRAMM_TOKEN="12365:jahsJHFhvdgjaJGHF" \ -e GRAFANABOT_TELEGRAMM_USERS="66660503,3883884329" \ -e GRAFANABOT_TELEGRAMM_GROUPS="-3455345434,-6786786868" \ -e GRAFANABOT_GRAFANA_URL="http://grafana.local:3000" \ @@ -46,13 +47,11 @@ Telegramm bot for sending grafana dashboards from playlistst. ```bash -docker build -t grafanabot -f docker/Dockerfile . - docker run \ - -e GRAFANABOT_TELEGRAMM_TOKEN="<12365:jahsJHFhvdgjaJGHF>" \ + -e GRAFANABOT_TELEGRAMM_TOKEN="12365:jahsJHFhvdgjaJGHF" \ -e GRAFANABOT_TELEGRAMM_USERS="66660503,3883884329" \ -e GRAFANABOT_TELEGRAMM_GROUPS="-3455345434,-6786786868" \ -e GRAFANABOT_GRAFANA_URL="http://grafana.local:3000" \ - grafanabot + asosnoviy/grafanabot:latest ``` diff --git a/docker/Dockerfile b/docker/Dockerfile index cf0bde2..55da10e 100644 --- a/docker/Dockerfile +++ b/docker/Dockerfile @@ -1,68 +1,14 @@ -ARG DOCKER_USERNAME=library -ARG BASE_IMAGE=debian -ARG BASE_TAG=bullseye-slim +FROM evilbeaver/onescript:dev -FROM library/adoptopenjdk:latest - -# Installing mono and oscript dependencies -ARG MONO_VERSION=6.12.0.122 - -RUN apt-get update \ - && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \ - ca-certificates \ - gnupg \ - dirmngr \ - wget \ - && apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF \ - && echo "deb http://download.mono-project.com/repo/debian stable-buster main" > /etc/apt/sources.list.d/mono-official-stable.list \ - && apt-get update \ - && DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y \ - mono-runtime \ - ca-certificates-mono \ - libmono-i18n4.0-all \ - libmono-system-runtime-serialization4.0-cil \ - && rm -rf /etc/apt/sources.list.d/mono-official-stable.list \ - && apt-get update \ - && cert-sync --user /etc/ssl/certs/ca-certificates.crt \ - && rm -rf \ - /var/lib/apt/lists/* \ - /var/cache/debconf \ - /tmp/* - -# remove DST Root CA X3 cert if it exists -#COPY ./scripts/remove-dst-root-ca-x3.sh /remove-dst-root-ca-x3.sh -#RUN chmod +x /remove-dst-root-ca-x3.sh \ -# && /remove-dst-root-ca-x3.sh \ -# && rm /remove-dst-root-ca-x3.sh - -# Installing oscript -ARG OVM_REPOSITORY_OWNER=oscript-library -ARG OVM_VERSION=v1.0.0-RC16 -ARG ONESCRIPT_VERSION=stable -ARG ONESCRIPT_PACKAGES="autumn winow json" - -RUN wget https://github.com/${OVM_REPOSITORY_OWNER}/ovm/releases/download/${OVM_VERSION}/ovm.exe \ - && mv ovm.exe /usr/local/bin/ \ - && echo 'mono /usr/local/bin/ovm.exe "$@"' | tee /usr/local/bin/ovm \ - && chmod +x /usr/local/bin/ovm \ - && ovm use --install ${ONESCRIPT_VERSION} - -ENV OSCRIPTBIN=/root/.local/share/ovm/current/bin -ENV PATH="$OSCRIPTBIN:$PATH" - -# Update and prepare oscript packages WORKDIR /app COPY ./packagedef . -RUN opm install opm && opm install -l - - -COPY ./ ./ -# COPY ./autumn-properties_my.json ./autumn-properties.json +COPY bot.ospx . +RUN opm install opm && opm install -f bot.ospx -COPY ./docker/entrypoint.sh / -RUN chmod 755 /entrypoint.sh \ - && chmod +x /entrypoint.sh +COPY ./src ./src +COPY ./main.os . +COPY ./oscript.cfg.example ./oscript.cfg -ENTRYPOINT ["/entrypoint.sh"] \ No newline at end of file +CMD ["grafana2telegramm-bot"] diff --git a/docker/entrypoint.sh b/docker/entrypoint.sh deleted file mode 100644 index d8c3fb4..0000000 --- a/docker/entrypoint.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh - -cd /app -oscript main.os \ No newline at end of file diff --git a/main.os b/main.os index 0783779..0d1870e 100644 --- a/main.os +++ b/main.os @@ -8,5 +8,5 @@ Совет.ПрефиксПеременныхСреды("GRAFANABOT"); Поделка = Новый Поделка(Совет); -Поделка.ПросканироватьКаталог(ОбъединитьПути(ТекущийКаталог() + "/src/core", "Классы")); +Поделка.ПросканироватьКаталог(ОбъединитьПути(ТекущийКаталог() + "src/core", "Классы")); Поделка.ЗапуститьПриложение(); diff --git a/oscript.cfg.example b/oscript.cfg.example index 6c91791..39e1188 100644 --- a/oscript.cfg.example +++ b/oscript.cfg.example @@ -1 +1 @@ -lib.system=./oscript_modules +lib.additional=./oscript_modules