From 8176233823d9975cdc8dc6f4479d9138563aff8f Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion Date: Thu, 31 Mar 2022 16:04:08 +0300 Subject: [PATCH 01/79] build(actions): add CI actions Add CI actions for building the chromium image and publish it into neuralegion repo. Maintain on-schedule.yml, both Makefile and readme.md. Copy firefox prefs.js file from firefox-headless-remote. [NLJ-2377] --- .github/workflows/build-docker-image.yml | 35 +++++++++ .github/workflows/on-schedule.yml | 22 +++--- chromium/Makefile | 22 ++++-- chromium/readme.md | 12 ++-- firefox/Makefile | 18 +++-- firefox/profile/prefs.js | 92 +++++++++++++++++++++++- firefox/readme.md | 14 ++-- readme.md | 9 +-- 8 files changed, 182 insertions(+), 42 deletions(-) create mode 100644 .github/workflows/build-docker-image.yml diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml new file mode 100644 index 0000000..9e7c67a --- /dev/null +++ b/.github/workflows/build-docker-image.yml @@ -0,0 +1,35 @@ +name: Docker Image CI + +on: + schedule: + - cron: 0 0 * * 3 + push: + branches: + - master + +jobs: + build: + runs-on: ubuntu-latest + + strategy: + matrix: + package: + - chromium + # - firefox + + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Get version + id: get_version + run: echo ::set-output name=result::$(make --file ${{ matrix.package }}/Makefile get-version) + + - name: Build image + run: make --file ${{ matrix.package }}/Makefile build version=${{ steps.get_version.outputs.result }} + + - name: Login into Docker + run: docker login --username=anatol1988 --password=${{ secrets.DOCKER_TOKEN }} + + - name: Push image to Docker + run: docker push neuralegion/nextools-${{ matrix.package }} diff --git a/.github/workflows/on-schedule.yml b/.github/workflows/on-schedule.yml index 1b8e8f0..6c7b36e 100644 --- a/.github/workflows/on-schedule.yml +++ b/.github/workflows/on-schedule.yml @@ -15,7 +15,7 @@ jobs: matrix: package: - chromium - - firefox + # - firefox steps: - name: Checkout @@ -84,18 +84,18 @@ jobs: if: steps.check_status.outputs.result == 'outdated' run: git push --force --tags origin master - - name: Docker GitHub Packages login - if: steps.check_status.outputs.result == 'outdated' - run: echo ${{ secrets.GITHUB_TOKEN }} | docker login --username ${{ github.actor }} --password-stdin docker.pkg.github.com + # - name: Docker GitHub Packages login + # if: steps.check_status.outputs.result == 'outdated' + # run: echo ${{ secrets.GITHUB_TOKEN }} | docker login --username ${{ github.actor }} --password-stdin docker.pkg.github.com - - name: Docker GitHub Packages push - if: steps.check_status.outputs.result == 'outdated' - run: docker push docker.pkg.github.com/nextools/images/${{ matrix.package }} + # - name: Docker GitHub Packages push + # if: steps.check_status.outputs.result == 'outdated' + # run: docker push docker.pkg.github.com/nextools/images/${{ matrix.package }} - - name: Docker Hub login + - name: Login into Docker if: steps.check_status.outputs.result == 'outdated' - run: echo ${{ secrets.DOCKER_HUB_TOKEN }} | docker login --username nextoolsbot --password-stdin + run: docker login --username=anatol1988 --password=${{ secrets.DOCKER_TOKEN }} - - name: Docker Hub push + - name: Push image to Docker if: steps.check_status.outputs.result == 'outdated' - run: docker push nextools/${{ matrix.package }} + run: docker push neuralegion/nextools-${{ matrix.package }} diff --git a/chromium/Makefile b/chromium/Makefile index 928d6ab..dec4c60 100644 --- a/chromium/Makefile +++ b/chromium/Makefile @@ -9,11 +9,24 @@ get-version: sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" build: - @docker build --tag chromium --build-arg VERSION=$(version) $(CURRENT_DIR) + @docker build --tag nextools-chromium --build-arg VERSION=$(version) $(CURRENT_DIR) test: - @docker run --detach --publish 9222:9222 --name chromium chromium - @timeout 20s sh -c "trap 'docker container rm --force chromium' 0; until curl http://localhost:9222/json/version; do sleep 1; done" + @docker run --detach --publish 9222:9222 --name nextools-chromium nextools-chromium + @timeout 20s sh -c "trap 'docker container rm --force nextools-chromium' 0; until curl http://localhost:9222/json/version; do sleep 1; done" + +# tags: +# @for i in 3 2 1 0 -1; do \ +# if [ $$i -ge 0 ]; then \ +# tag=`echo $(version) | sed --regexp-extended "s/(\.[0-9]+){$$i}$$//"`; \ +# else \ +# tag=latest; \ +# fi; \ +# echo $$tag; \ +# docker tag nextools-chromium docker.pkg.github.com/neuralegion/images/nextools-chromium:$$tag; \ +# docker tag nextools-chromium neuralegion/nextools-chromium:$$tag; \ +# git tag --force chromium@$$tag; \ +# done tags: @for i in 3 2 1 0 -1; do \ @@ -23,7 +36,6 @@ tags: tag=latest; \ fi; \ echo $$tag; \ - docker tag chromium docker.pkg.github.com/nextools/images/chromium:$$tag; \ - docker tag chromium nextools/chromium:$$tag; \ + docker tag nextools-chromium neuralegion/nextools-chromium:$$tag; \ git tag --force chromium@$$tag; \ done diff --git a/chromium/readme.md b/chromium/readme.md index 1b0b0f1..044c083 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -12,16 +12,16 @@ Auto-updatable every 12 hours: Chromium version is split into multiple Docker ta ### Docker Hub ```sh -docker run -it --rm -p 9222:9222 nextools/chromium: +docker run -it --rm -p 9222:9222 neuralegion/nextools-chromium: ``` -### GitHub Packages + ### Puppeteer @@ -53,13 +53,13 @@ await browser.close() Container uses a `RD_PORT` [environment variable](https://docs.docker.com/engine/reference/commandline/run/#set-environment-variables--e---env---env-file), which is `9222` by default: ``` -docker run -it --rm -p 9223:9223 -e RD_PORT=9223 nextools/chromium: +docker run -it --rm -p 9223:9223 -e RD_PORT=9223 neuralegion/nextools-chromium: ``` ### pass additional Chromium arguments ``` -docker run -it --rm -p 9222:9222 nextools/chromium: --some-chromium-arg +docker run -it --rm -p 9222:9222 neuralegion/nextools-chromium: --some-chromium-arg ``` ### add custom fonts @@ -67,5 +67,5 @@ docker run -it --rm -p 9222:9222 nextools/chromium: --some-chromium-arg It's possible to mount a folder with custom fonts to be used later by Chromium: ``` -docker run -it --rm -p 9222:9222 -v $(pwd)/path/to/fonts:/home/chromium/.fonts nextools/chromium: +docker run -it --rm -p 9222:9222 -v $(pwd)/path/to/fonts:/home/chromium/.fonts neuralegion/nextools-chromium: ``` diff --git a/firefox/Makefile b/firefox/Makefile index 4f85620..9342f91 100644 --- a/firefox/Makefile +++ b/firefox/Makefile @@ -10,17 +10,23 @@ get-version: build: @_version=`echo $(version) | sed --regexp-extended s/a/~a/` - @docker build --tag firefox --build-arg VERSION=$$_version $(CURRENT_DIR) + @docker build --tag nextools-firefox --build-arg VERSION=$$_version $(CURRENT_DIR) test: - @docker run --detach --publish 9222:9222 --name firefox firefox - @timeout 20s sh -c "trap 'docker container rm --force firefox' 0; until curl http://localhost:9222/json/version; do sleep 1; done" + @docker run --detach --publish 9222:9222 --name nextools-firefox nextools-firefox + @timeout 20s sh -c "trap 'docker container rm --force nextools-firefox' 0; until curl http://localhost:9222/json/version; do sleep 1; done" + +# tags: +# @for tag in $(version) latest; do \ +# echo $$tag; \ +# docker tag nextools-firefox docker.pkg.github.com/neuralegion/images/nextools-firefox:$$tag; \ +# docker tag nextools-firefox neuralegion/nextools-firefox:$$tag; \ +# git tag --force firefox@$$tag >/dev/null 2>&1; \ +# done tags: @for tag in $(version) latest; do \ echo $$tag; \ - docker tag firefox docker.pkg.github.com/nextools/images/firefox:$$tag; \ - docker tag firefox nextools/firefox:$$tag; \ + docker tag nextools-firefox neuralegion/nextools-firefox:$$tag; \ git tag --force firefox@$$tag >/dev/null 2>&1; \ done - diff --git a/firefox/profile/prefs.js b/firefox/profile/prefs.js index a3c110b..d358531 100644 --- a/firefox/profile/prefs.js +++ b/firefox/profile/prefs.js @@ -14,10 +14,42 @@ user_pref("browser.onboarding.enabled", false); user_pref("browser.tabs.warnOnClose", false); user_pref("browser.tabs.warnOnCloseOtherTabs", false); user_pref("browser.tabs.warnOnOpen", false); -user_pref("browser.link.open_newwindow", 3); +// optimize memory +user_pref("browser.tabs.remote.autostart", false); + +/* Prop: browser.link.open_newwindow +1 = force new window into same tab +2 = allow link to open a new window +3 = divert new window to a new tab (default) +*/ +user_pref("browser.link.open_newwindow", 1); +/* Prop: browser.link.open_newwindow.restriction +0 = apply the setting under (browser.link.open_newwindow) to ALL new windows (even script windows) +1 = override the setting under (browser.link.open_newwindow) and always use new windows +2 = apply the setting under (browser.link.open_newwindow) to normal windows, but NOT to script windows with features (default) +*/ user_pref("browser.link.open_newwindow.restriction", 0); +/* Prop: browser.link.open_newwindow.override.external +-1 = apply the setting under (browser.link.open_newwindow) to external links (default) +1 = open external links in the last active tab replacing the current page +2 = open external links in a new window +3 = open external links in a new tab in the last active window +*/ +user_pref("browser.link.open_newwindow.override.external", 1); // updates +user_pref("media.eme.enabled", false); +user_pref("media.gmp-widevinecdm.enabled", false); +user_pref("media.gmp-gmpopenh264.enabled", false); +user_pref("media.gmp-gmpopenh264.autoupdate", false); +user_pref("media.gmp-manager.cert.checkAttributes", false); +user_pref("media.gmp-gmpopenh264.visible", false); +user_pref("media.gmp-manager.cert.checkAttributes", false); +user_pref("media.gmp-manager.cert.requireBuiltIn", false); +user_pref("media.gmp-manager.url", "about:blank"); +user_pref("media.gmp-provider.enabled", false); +user_pref("media.gmp-widevinecdm.visible", false) +user_pref("media.gmp.trial-create.enabled", false); user_pref("app.update.enabled", false); user_pref("extensions.update.enabled", false); user_pref("extensions.update.autoUpdateDefault", false); @@ -29,7 +61,6 @@ user_pref("app.update.service.enabled", false); user_pref("app.update.staging.enabled", false); user_pref("lightweightThemes.update.enabled", false); user_pref("browser.search.update", false); -user_pref("browser.aboutHomeSnippets.updateUrl", "data:,"); // crash reports user_pref("dom.ipc.plugins.flash.subprocess.crashreporter.enabled", false); @@ -42,9 +73,12 @@ user_pref("browser.chrome.errorReporter.enabled", false); user_pref("browser.chrome.errorReporter.submitUrl", ""); // telemetry and data reporting +user_pref("toolkit.telemetry.unifiedIsOptIn", false); +user_pref("toolkit.telemetry.prompted", 2); +user_pref("toolkit.telemetry.rejected", true); user_pref("toolkit.telemetry.unified", false); user_pref("toolkit.telemetry.enabled", false); -user_pref("toolkit.telemetry.server", "data:,"); +user_pref("toolkit.telemetry.server", ""); user_pref("toolkit.telemetry.archive.enabled", false); user_pref("toolkit.telemetry.cachedClientID", ""); user_pref("toolkit.telemetry.newProfilePing.enabled", false); @@ -74,3 +108,55 @@ user_pref("experiments.manifest.uri", ""); user_pref("experiments.supported", false); user_pref("experiments.activeExperiment", false); user_pref("network.allow-experiments", false); + +// Marionette settings +user_pref("marionette.log.level", "debug"); + +// Enable authless screencapture +user_pref("media.getusermedia.browser.enabled", true); +user_pref("media.navigator.permission.disabled", true); + +// Don't fetch Favico +user_pref("browser.chrome.favicons", false); +user_pref("browser.chrome.site_icons", false); + +// Allow proxying of 127.0.0.1/localhost +user_pref("network.proxy.allow_hijacking_localhost", true); + +// Don't ask to save stuff to disk +user_pref("browser.helperApps.neverAsk.saveToDisk", "application/octet-stream,text/plain"); + +// Don't send silly data to Mozzila +user_pref("extensions.blocklist.enabled", false); +user_pref("browser.safebrowsing.downloads.remote.enabled", false); +user_pref("messaging-system.rsexperimentloader.enabled", false); +user_pref("browser.aboutHomeSnippets.updateUrl", ""); +user_pref("app.normandy.enabled", false); +user_pref("network.captive-portal-service.enabled", false); +user_pref("network.connectivity-service.enabled", false); +user_pref("identity.fxaccounts.enabled", false); + +// Handle SSL errors and such without popping screens +user_pref("security.insecure_field_warning.contextual.enabled", false); +user_pref("security.certerrors.permanentOverride", false); +user_pref("network.stricttransportsecurity.preloadlist", false); +user_pref("security.enterprise_roots.enabled", true); + +// Disable Cache +user_pref("browser.cache.disk.enable", false); +user_pref("browser.cache.memory.enable", false); +user_pref("browser.cache.offline.enable", false); +user_pref("network.http.use-cache", false); +user_pref("browser.cache.disk.capacity", 0); + +// Disable service workers +user_pref("dom.serviceWorkers.enabled", false); + +// For finally disable external urls requests +user_pref("app.update.url.details", "about:blank"); +user_pref("app.update.url.manual", "about:blank"); +user_pref("browser.safebrowsing.provider.google.updateURL", "about:blank"); +user_pref("browser.safebrowsing.provider.google4.updateURL", "about:blank"); +user_pref("browser.safebrowsing.provider.mozilla.updateURL", "about:blank"); +user_pref("extensions.update.background.url", "about:blank"); +user_pref("extensions.update.url", "about:blank"); diff --git a/firefox/readme.md b/firefox/readme.md index 02cac1a..3b7ffac 100644 --- a/firefox/readme.md +++ b/firefox/readme.md @@ -13,16 +13,16 @@ Auto-updatable every 12 hours (currently available only as [nightly alpha builds ### Docker Hub ```sh -docker run -it --rm -p 9222:9222 nextools/firefox: +docker run -it --rm -p 9222:9222 neuralegion/nextools-firefox: ``` -### GitHub Packages + ### Puppeteer @@ -52,19 +52,19 @@ await browser.close() Container uses a `RD_PORT` [environment variable](https://docs.docker.com/engine/reference/commandline/run/#set-environment-variables--e---env---env-file), which is `9222` by default: ``` -docker run -it --rm -p 9223:9223 -e RD_PORT=9223 nextools/firefox: +docker run -it --rm -p 9223:9223 -e RD_PORT=9223 neuralegion/nextools-firefox: ``` ### pass additional Firefox arguments ``` -docker run -it --rm -p 9222:9222 nextools/firefox: --some-firefox-arg +docker run -it --rm -p 9222:9222 neuralegion/nextools-firefox: --some-firefox-arg ``` ### add custom fonts -It's possible to mount a folder with custom fonts to be used later by Firefox: +It's possible to mount a folder with custom fonts to be used later by Firefox: ``` -docker run -it --rm -p 9222:9222 -v $(pwd)/path/to/fonts:/home/firefox/.fonts nextools/firefox: +docker run -it --rm -p 9222:9222 -v $(pwd)/path/to/fonts:/home/firefox/.fonts neuralegion/nextools-firefox: ``` diff --git a/readme.md b/readme.md index 99e5ccf..6a5e9af 100644 --- a/readme.md +++ b/readme.md @@ -1,10 +1,11 @@ -# images +# Images -Monorepo of Docker images auto-published to [Docker Hub](https://hub.docker.com/repositories/nextools) and [GitHub Packages](https://help.github.com/en/packages/using-github-packages-with-your-projects-ecosystem/configuring-docker-for-use-with-github-packages). +Monorepo of Docker images auto-published to [Docker Hub](https://hub.docker.com/repositories/neuralegion). + -## GitHub Packages + From 627c00aa50eb0a5f4f7d47ffb58cd84d0a2a2382 Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion Date: Mon, 4 Apr 2022 13:49:29 +0300 Subject: [PATCH 02/79] build(actions): fix tags --- chromium/Makefile | 6 +++--- firefox/Makefile | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/chromium/Makefile b/chromium/Makefile index dec4c60..1be2d3d 100644 --- a/chromium/Makefile +++ b/chromium/Makefile @@ -9,10 +9,10 @@ get-version: sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" build: - @docker build --tag nextools-chromium --build-arg VERSION=$(version) $(CURRENT_DIR) + @docker build --tag neuralegion/nextools-chromium --build-arg VERSION=$(version) $(CURRENT_DIR) test: - @docker run --detach --publish 9222:9222 --name nextools-chromium nextools-chromium + @docker run --detach --publish 9222:9222 --name nextools-chromium neuralegion/nextools-chromium @timeout 20s sh -c "trap 'docker container rm --force nextools-chromium' 0; until curl http://localhost:9222/json/version; do sleep 1; done" # tags: @@ -37,5 +37,5 @@ tags: fi; \ echo $$tag; \ docker tag nextools-chromium neuralegion/nextools-chromium:$$tag; \ - git tag --force chromium@$$tag; \ + git tag --force nextools-chromium@$$tag; \ done diff --git a/firefox/Makefile b/firefox/Makefile index 9342f91..e9d6b73 100644 --- a/firefox/Makefile +++ b/firefox/Makefile @@ -10,10 +10,10 @@ get-version: build: @_version=`echo $(version) | sed --regexp-extended s/a/~a/` - @docker build --tag nextools-firefox --build-arg VERSION=$$_version $(CURRENT_DIR) + @docker build --tag neuralegion/nextools-firefox --build-arg VERSION=$$_version $(CURRENT_DIR) test: - @docker run --detach --publish 9222:9222 --name nextools-firefox nextools-firefox + @docker run --detach --publish 9222:9222 --name nextools-firefox neuralegion/nextools-firefox @timeout 20s sh -c "trap 'docker container rm --force nextools-firefox' 0; until curl http://localhost:9222/json/version; do sleep 1; done" # tags: @@ -28,5 +28,5 @@ tags: @for tag in $(version) latest; do \ echo $$tag; \ docker tag nextools-firefox neuralegion/nextools-firefox:$$tag; \ - git tag --force firefox@$$tag >/dev/null 2>&1; \ + git tag --force nextools-firefox@$$tag >/dev/null 2>&1; \ done From cd9e62940b227c8f99f64fc81608505ba49d3a8e Mon Sep 17 00:00:00 2001 From: GitHub Date: Mon, 4 Apr 2022 12:10:48 +0000 Subject: [PATCH 03/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@99.0.4844.8?= =?UTF-8?q?4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index 044c083..3482098 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/99.0.4844.51/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/139M/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/99.0.4844.84/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From 5fcbfa00448a1a2f1ff5fd64cd18c846fce833dd Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion <89640567+shevchenkov-neuralegion@users.noreply.github.com> Date: Tue, 12 Apr 2022 11:45:55 +0300 Subject: [PATCH 04/79] fix: change window size (#3) set window size to FullHD as a default for screenshots matching --- chromium/entrypoint.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium/entrypoint.sh b/chromium/entrypoint.sh index dbac358..00fcf0f 100644 --- a/chromium/entrypoint.sh +++ b/chromium/entrypoint.sh @@ -32,4 +32,5 @@ fi --remote-debugging-port="$RD_PORT" \ --safebrowsing-disable-auto-update \ --user-data-dir=/home/chromium/ \ + --window-size=1920,1080 \ "$@" From 567045b6072c6a27aac6da985b2148fa44da6435 Mon Sep 17 00:00:00 2001 From: Goncharenko Alexander <61147910+gasRU76@users.noreply.github.com> Date: Fri, 15 Apr 2022 13:24:06 +0300 Subject: [PATCH 05/79] perf: increase default network params (#4) * add some diagnostic tools --- chromium/Dockerfile | 2 ++ chromium/entrypoint.sh | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/chromium/Dockerfile b/chromium/Dockerfile index affe0db..2ae6729 100644 --- a/chromium/Dockerfile +++ b/chromium/Dockerfile @@ -8,6 +8,8 @@ RUN apt-get update \ # https://github.com/phusion/baseimage-docker/issues/319 && apt-get install --yes apt-utils 2>&1 | grep -v "debconf: delaying package configuration, since apt-utils is not installed" \ && apt-get install --no-install-recommends --yes \ + htop \ + net-tools \ dumb-init \ fontconfig \ chromium-browser=${VERSION}\* \ diff --git a/chromium/entrypoint.sh b/chromium/entrypoint.sh index 00fcf0f..192cf35 100644 --- a/chromium/entrypoint.sh +++ b/chromium/entrypoint.sh @@ -4,7 +4,7 @@ if [ "$(ls -A /home/chromium/.fonts/)" ]; then fc-cache -f -v fi -/usr/bin/chromium-browser \ +ulimit -n 65000 && ulimit -p 65000 && /usr/bin/chromium-browser \ --disable-background-networking \ --disable-background-timer-throttling \ --disable-backgrounding-occluded-windows \ From f9b896bd9a178f76bf6bd9b50dcd63b8879d3ab6 Mon Sep 17 00:00:00 2001 From: GitHub Date: Tue, 26 Apr 2022 00:16:33 +0000 Subject: [PATCH 06/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@100.0.4896.?= =?UTF-8?q?127?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index 3482098..93fe5fd 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/99.0.4844.84/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/100.0.4896.127/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From ed815b1de81d7141808f25e4a367a769746847eb Mon Sep 17 00:00:00 2001 From: GitHub Date: Tue, 17 May 2022 00:17:47 +0000 Subject: [PATCH 07/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@101.0.4951.?= =?UTF-8?q?64?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index 93fe5fd..b525bfe 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/100.0.4896.127/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/101.0.4951.64/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From b34d0be499cb3fbad430a9178c85fb7f9b04ba60 Mon Sep 17 00:00:00 2001 From: Ayupov Roman Date: Thu, 7 Jul 2022 11:53:57 +0300 Subject: [PATCH 08/79] feat: add curl --- chromium/Dockerfile | 1 + 1 file changed, 1 insertion(+) diff --git a/chromium/Dockerfile b/chromium/Dockerfile index 2ae6729..9e08281 100644 --- a/chromium/Dockerfile +++ b/chromium/Dockerfile @@ -13,6 +13,7 @@ RUN apt-get update \ dumb-init \ fontconfig \ chromium-browser=${VERSION}\* \ + curl \ && rm -rf /var/lib/apt/lists/* \ && groupadd chromium \ && useradd --create-home --gid chromium chromium \ From 211c445708d87bf3d226d6653ec510201e287ddc Mon Sep 17 00:00:00 2001 From: Alexander Goncharenko Date: Wed, 13 Jul 2022 13:16:30 +0300 Subject: [PATCH 09/79] fix: ecs --- chromium/entrypoint.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/entrypoint.sh b/chromium/entrypoint.sh index 192cf35..359d2f5 100644 --- a/chromium/entrypoint.sh +++ b/chromium/entrypoint.sh @@ -4,7 +4,7 @@ if [ "$(ls -A /home/chromium/.fonts/)" ]; then fc-cache -f -v fi -ulimit -n 65000 && ulimit -p 65000 && /usr/bin/chromium-browser \ +(ulimit -n 65000 || true) && (ulimit -p 65000 || true) && /usr/bin/chromium-browser \ --disable-background-networking \ --disable-background-timer-throttling \ --disable-backgrounding-occluded-windows \ From 477f2f1d937e0e6a8bd2fb5c22eafa93f0749c39 Mon Sep 17 00:00:00 2001 From: Aleksey Date: Wed, 13 Jul 2022 13:39:50 +0300 Subject: [PATCH 10/79] also push image to aws (#7) --- .github/workflows/build-docker-image.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 9e7c67a..d3fa682 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -33,3 +33,10 @@ jobs: - name: Push image to Docker run: docker push neuralegion/nextools-${{ matrix.package }} + + - name: Login in ECR + run: eval $(aws ecr get-login --no-include-email) + + - name: Push Docker image to AWS ECR + run: docker push 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-${{ matrix.package }} + From 62fa4642e5d855aee24ab0aacdfe1711a9a69756 Mon Sep 17 00:00:00 2001 From: Aleksey Date: Wed, 13 Jul 2022 14:07:39 +0300 Subject: [PATCH 11/79] add tag to image --- .github/workflows/build-docker-image.yml | 1 - chromium/Makefile | 2 +- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index d3fa682..2a3797c 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -15,7 +15,6 @@ jobs: matrix: package: - chromium - # - firefox steps: - name: Checkout diff --git a/chromium/Makefile b/chromium/Makefile index 1be2d3d..56c1473 100644 --- a/chromium/Makefile +++ b/chromium/Makefile @@ -9,7 +9,7 @@ get-version: sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" build: - @docker build --tag neuralegion/nextools-chromium --build-arg VERSION=$(version) $(CURRENT_DIR) + @docker build --tag neuralegion/nextools-chromium --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chromium --build-arg VERSION=$(version) $(CURRENT_DIR) test: @docker run --detach --publish 9222:9222 --name nextools-chromium neuralegion/nextools-chromium From 2bfd72dad9277f8f809e121a7740f02e38051b68 Mon Sep 17 00:00:00 2001 From: Aleksey Date: Wed, 13 Jul 2022 14:21:15 +0300 Subject: [PATCH 12/79] fix AWS authentication --- .github/workflows/build-docker-image.yml | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 2a3797c..54309fa 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -11,31 +11,32 @@ jobs: build: runs-on: ubuntu-latest - strategy: - matrix: - package: - - chromium - steps: - name: Checkout uses: actions/checkout@v2 + - name: Configure AWS credentials + uses: aws-actions/configure-aws-credentials@v1 + with: + aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + aws-region: ${{ secrets.AWS_DEFAULT_REGION }} - name: Get version id: get_version - run: echo ::set-output name=result::$(make --file ${{ matrix.package }}/Makefile get-version) + run: echo ::set-output name=result::$(make --file chromium/Makefile get-version) - name: Build image - run: make --file ${{ matrix.package }}/Makefile build version=${{ steps.get_version.outputs.result }} + run: make --file chromium/Makefile build version=${{ steps.get_version.outputs.result }} - name: Login into Docker run: docker login --username=anatol1988 --password=${{ secrets.DOCKER_TOKEN }} - name: Push image to Docker - run: docker push neuralegion/nextools-${{ matrix.package }} + run: docker push neuralegion/nextools-chromium - name: Login in ECR run: eval $(aws ecr get-login --no-include-email) - name: Push Docker image to AWS ECR - run: docker push 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-${{ matrix.package }} + run: docker push 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chromium From 26d3227d8f21898c76565c8c498ef20f887fa525 Mon Sep 17 00:00:00 2001 From: Aleksey Date: Wed, 13 Jul 2022 14:25:10 +0300 Subject: [PATCH 13/79] fix AWS authentication --- .github/workflows/build-docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 54309fa..ef4d916 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -10,7 +10,7 @@ on: jobs: build: runs-on: ubuntu-latest - + container: neuralegion/devops steps: - name: Checkout uses: actions/checkout@v2 From 2899fac1348e390ebffe934b99a26bafa74d975f Mon Sep 17 00:00:00 2001 From: GitHub Date: Fri, 29 Jul 2022 00:17:30 +0000 Subject: [PATCH 14/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@103.0.5060.?= =?UTF-8?q?134?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index b525bfe..3ba4082 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/101.0.4951.64/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/103.0.5060.134/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From 20f65adfee5b34e8bd7b6c8d7d173160bc83063c Mon Sep 17 00:00:00 2001 From: Aleksey Date: Fri, 5 Aug 2022 19:00:21 +0300 Subject: [PATCH 15/79] feat: build headful chrome image (#9) * feat: build both headful and headless chrome on CI --- .github/workflows/build-docker-image.yml | 16 ++++-- .github/workflows/on-schedule.yml | 9 +--- chromium-headful/Dockerfile | 30 +++++++++++ chromium-headful/Makefile | 28 +++++++++++ chromium-headful/entrypoint.sh | 44 ++++++++++++++++ chromium-headful/license.md | 22 ++++++++ chromium-headful/readme.md | 64 ++++++++++++++++++++++++ chromium/Makefile | 13 ----- chromium/entrypoint.sh | 4 ++ 9 files changed, 204 insertions(+), 26 deletions(-) create mode 100644 chromium-headful/Dockerfile create mode 100644 chromium-headful/Makefile create mode 100644 chromium-headful/entrypoint.sh create mode 100644 chromium-headful/license.md create mode 100644 chromium-headful/readme.md diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index ef4d916..8fef2c5 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -2,11 +2,17 @@ name: Docker Image CI on: schedule: - - cron: 0 0 * * 3 + - cron: 0 0 * * 7 push: branches: - master + strategy: + matrix: + package: + - chromium + - chromium-headful + jobs: build: runs-on: ubuntu-latest @@ -23,20 +29,20 @@ jobs: - name: Get version id: get_version - run: echo ::set-output name=result::$(make --file chromium/Makefile get-version) + run: echo ::set-output name=result::$(make --file ${{ matrix.package }}/Makefile get-version) - name: Build image - run: make --file chromium/Makefile build version=${{ steps.get_version.outputs.result }} + run: make --file ${{ matrix.package }}/Makefile build version=${{ steps.get_version.outputs.result }} - name: Login into Docker run: docker login --username=anatol1988 --password=${{ secrets.DOCKER_TOKEN }} - name: Push image to Docker - run: docker push neuralegion/nextools-chromium + run: docker push neuralegion/nextools-${{ matrix.package }} - name: Login in ECR run: eval $(aws ecr get-login --no-include-email) - name: Push Docker image to AWS ECR - run: docker push 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chromium + run: docker push 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-${{ matrix.package }} diff --git a/.github/workflows/on-schedule.yml b/.github/workflows/on-schedule.yml index 6c7b36e..564eaa5 100644 --- a/.github/workflows/on-schedule.yml +++ b/.github/workflows/on-schedule.yml @@ -15,6 +15,7 @@ jobs: matrix: package: - chromium + - chromium-headful # - firefox steps: @@ -84,14 +85,6 @@ jobs: if: steps.check_status.outputs.result == 'outdated' run: git push --force --tags origin master - # - name: Docker GitHub Packages login - # if: steps.check_status.outputs.result == 'outdated' - # run: echo ${{ secrets.GITHUB_TOKEN }} | docker login --username ${{ github.actor }} --password-stdin docker.pkg.github.com - - # - name: Docker GitHub Packages push - # if: steps.check_status.outputs.result == 'outdated' - # run: docker push docker.pkg.github.com/nextools/images/${{ matrix.package }} - - name: Login into Docker if: steps.check_status.outputs.result == 'outdated' run: docker login --username=anatol1988 --password=${{ secrets.DOCKER_TOKEN }} diff --git a/chromium-headful/Dockerfile b/chromium-headful/Dockerfile new file mode 100644 index 0000000..f3ee2f4 --- /dev/null +++ b/chromium-headful/Dockerfile @@ -0,0 +1,30 @@ +FROM ubuntu:bionic + +ARG VERSION +ARG DEBIAN_FRONTEND=noninteractive +ENV RD_PORT=9222 + +RUN apt-get update \ + # https://github.com/phusion/baseimage-docker/issues/319 + && apt-get install --yes apt-utils 2>&1 | grep -v "debconf: delaying package configuration, since apt-utils is not installed" \ + && apt-get install --no-install-recommends --yes \ + htop \ + net-tools \ + dumb-init \ + fontconfig \ + chromium-browser=${VERSION}\* \ + curl \ + xvfb \ + socat \ + && rm -rf /var/lib/apt/lists/* \ + && groupadd chromium \ + && useradd --create-home --gid chromium chromium \ + && chown --recursive chromium:chromium /home/chromium/ + +VOLUME ["/home/chromium/.fonts"] + +COPY --chown=chromium:chromium entrypoint.sh /home/chromium/ + +USER chromium + +ENTRYPOINT ["dumb-init", "--", "/bin/sh", "/home/chromium/entrypoint.sh"] diff --git a/chromium-headful/Makefile b/chromium-headful/Makefile new file mode 100644 index 0000000..0854f25 --- /dev/null +++ b/chromium-headful/Makefile @@ -0,0 +1,28 @@ +.PHONY: get-version build test tags + +CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +get-version: + @docker pull ubuntu:bionic > /dev/null 2>&1 + @docker run --rm \ + ubuntu:bionic \ + sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" + +build: + @docker build --tag neuralegion/nextools-chromium-headful --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chromium-headful --build-arg VERSION=$(version) $(CURRENT_DIR) + +test: + @docker run --detach --publish 9222:9222 --name nextools-chromium-headful neuralegion/nextools-chromium-headful + @timeout 20s sh -c "trap 'docker container rm --force nextools-chromium' 0; until curl http://localhost:9222/json/version; do sleep 1; done" + +tags: + @for i in 3 2 1 0 -1; do \ + if [ $$i -ge 0 ]; then \ + tag=`echo $(version) | sed --regexp-extended "s/(\.[0-9]+){$$i}$$//"`; \ + else \ + tag=latest; \ + fi; \ + echo $$tag; \ + docker tag nextools-chromium-headful neuralegion/nextools-chromium-headful:$$tag; \ + git tag --force nextools-chromium-headful@$$tag; \ + done diff --git a/chromium-headful/entrypoint.sh b/chromium-headful/entrypoint.sh new file mode 100644 index 0000000..7ea56b4 --- /dev/null +++ b/chromium-headful/entrypoint.sh @@ -0,0 +1,44 @@ +#!/bin/sh + +if [ "$(ls -A /home/chromium/.fonts/)" ]; then + fc-cache -f -v +fi + +ip=$(hostname --ip-address) +socat tcp-listen:"$RD_PORT",bind="$ip",fork tcp:0.0.0.0:"$RD_PORT" & +(ulimit -n 65000 || true) && (ulimit -p 65000 || true) && \ + xvfb-run -a \ + /usr/bin/chromium-browser \ + --enable-automation \ + --disable-background-networking \ + --disable-background-timer-throttling \ + --disable-backgrounding-occluded-windows \ + --disable-renderer-backgrounding \ + --disable-breakpad \ + --disable-client-side-phishing-detection \ + --disable-default-apps \ + --disable-dev-shm-usage \ + --disable-extensions \ + --disable-gpu \ + --disable-popup-blocking \ + --disable-prompt-on-repost \ + --disable-sync \ + --disable-translate \ + --disable-setuid-sandbox \ + --disable-ipc-flooding-protection \ + --disable-component-update \ + --hide-scrollbars \ + --ignore-certificate-errors \ + --ignore-certificate-errors-spki-list \ + --ignore-ssl-errors \ + --metrics-recording-only \ + --mute-audio \ + --no-first-run \ + --no-sandbox \ + --no-default-browser-check \ + --remote-debugging-address=0.0.0.0 \ + --remote-debugging-port="$RD_PORT" \ + --safebrowsing-disable-auto-update \ + --user-data-dir=/home/chromium/ \ + --window-size=1920,1080 \ + "$@" diff --git a/chromium-headful/license.md b/chromium-headful/license.md new file mode 100644 index 0000000..c5ac205 --- /dev/null +++ b/chromium-headful/license.md @@ -0,0 +1,22 @@ +# The MIT License (MIT) + +* Copyright (c) 2018–2020 Kir Belevich +* Copyright (c) 2020–present NexTools + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/chromium-headful/readme.md b/chromium-headful/readme.md new file mode 100644 index 0000000..046e89c --- /dev/null +++ b/chromium-headful/readme.md @@ -0,0 +1,64 @@ +# chromium + +[![version](https://flat.badgen.net/badge/version/103.0.5060.134/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) + +Dockerized Chromium in headful+remote debugging mode + +Auto-updatable every 12 hours: Chromium version is split into multiple Docker tags, for example version `80.0.3987.87` produces `80`, `80.0`, `80.0.3987`, `80.0.3987.87` and `latest` tagged images. See [list of tags available to use](https://hub.docker.com/repository/docker/nextools/chromium/tags). + + +## Usage + +### Docker Hub + +```sh +docker run -it --rm -p 9222:9222 neuralegion/nextools-chromium: +``` +--> + +### Puppeteer + +Ensure to match version of [`puppeteer-core`](https://github.com/GoogleChrome/puppeteer) to the version of Chromium you are using: + +```sh +yarn add puppeteer-core@chrome- +``` + +```js +import fetch from 'node-fetch' +import puppeteer from 'puppeteer-core' + +const response = await fetch('http://localhost:9222/json/version') +const { webSocketDebuggerUrl } = await response.json() + +const browser = await puppeteer.connect({ browserWSEndpoint: webSocketDebuggerUrl }) +const page = await browser.newPage() + +await page.goto('https://example.com') +await page.screenshot({ path: 'example.png' }) +await browser.close() +``` + +## How to + +### specify a different port + +Container uses a `RD_PORT` [environment variable](https://docs.docker.com/engine/reference/commandline/run/#set-environment-variables--e---env---env-file), which is `9222` by default: + +``` +docker run -it --rm -p 9223:9223 -e RD_PORT=9223 neuralegion/nextools-chromium: +``` + +### pass additional Chromium arguments + +``` +docker run -it --rm -p 9222:9222 neuralegion/nextools-chromium: --some-chromium-arg +``` + +### add custom fonts + +It's possible to mount a folder with custom fonts to be used later by Chromium: + +``` +docker run -it --rm -p 9222:9222 -v $(pwd)/path/to/fonts:/home/chromium/.fonts neuralegion/nextools-chromium: +``` diff --git a/chromium/Makefile b/chromium/Makefile index 56c1473..bfb3bdb 100644 --- a/chromium/Makefile +++ b/chromium/Makefile @@ -15,19 +15,6 @@ test: @docker run --detach --publish 9222:9222 --name nextools-chromium neuralegion/nextools-chromium @timeout 20s sh -c "trap 'docker container rm --force nextools-chromium' 0; until curl http://localhost:9222/json/version; do sleep 1; done" -# tags: -# @for i in 3 2 1 0 -1; do \ -# if [ $$i -ge 0 ]; then \ -# tag=`echo $(version) | sed --regexp-extended "s/(\.[0-9]+){$$i}$$//"`; \ -# else \ -# tag=latest; \ -# fi; \ -# echo $$tag; \ -# docker tag nextools-chromium docker.pkg.github.com/neuralegion/images/nextools-chromium:$$tag; \ -# docker tag nextools-chromium neuralegion/nextools-chromium:$$tag; \ -# git tag --force chromium@$$tag; \ -# done - tags: @for i in 3 2 1 0 -1; do \ if [ $$i -ge 0 ]; then \ diff --git a/chromium/entrypoint.sh b/chromium/entrypoint.sh index 359d2f5..3172e64 100644 --- a/chromium/entrypoint.sh +++ b/chromium/entrypoint.sh @@ -5,6 +5,7 @@ if [ "$(ls -A /home/chromium/.fonts/)" ]; then fi (ulimit -n 65000 || true) && (ulimit -p 65000 || true) && /usr/bin/chromium-browser \ + --enable-automation \ --disable-background-networking \ --disable-background-timer-throttling \ --disable-backgrounding-occluded-windows \ @@ -19,6 +20,8 @@ fi --disable-prompt-on-repost \ --disable-sync \ --disable-translate \ + --disable-ipc-flooding-protection \ + --disable-component-update \ --headless \ --hide-scrollbars \ --ignore-certificate-errors \ @@ -28,6 +31,7 @@ fi --mute-audio \ --no-first-run \ --no-sandbox \ + --no-default-browser-check \ --remote-debugging-address=0.0.0.0 \ --remote-debugging-port="$RD_PORT" \ --safebrowsing-disable-auto-update \ From b6af1b4822e884c578a01f87c274e983d098cd71 Mon Sep 17 00:00:00 2001 From: Aleksey Date: Fri, 5 Aug 2022 19:02:21 +0300 Subject: [PATCH 16/79] fix: build --- .github/workflows/build-docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 8fef2c5..366e9e7 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -2,7 +2,7 @@ name: Docker Image CI on: schedule: - - cron: 0 0 * * 7 + - cron: 0 0 * * 6 push: branches: - master From 9967105d4bcfe318137af1b26441a193362cce95 Mon Sep 17 00:00:00 2001 From: Aleksey Date: Fri, 5 Aug 2022 19:04:14 +0300 Subject: [PATCH 17/79] fix: build --- .github/workflows/build-docker-image.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 366e9e7..84aed13 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -7,16 +7,17 @@ on: branches: - master - strategy: - matrix: - package: - - chromium - - chromium-headful - jobs: build: runs-on: ubuntu-latest container: neuralegion/devops + + strategy: + matrix: + package: + - chromium + - chromium-headful + steps: - name: Checkout uses: actions/checkout@v2 From 75dca4939acb79a5cf9ba7bd3b9bdce29710ac24 Mon Sep 17 00:00:00 2001 From: Aleksey Date: Fri, 5 Aug 2022 19:29:43 +0300 Subject: [PATCH 18/79] fix: headful deployment to AWS (#10) --- .github/workflows/build-docker-image.yml | 2 +- .github/workflows/on-schedule.yml | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 84aed13..f72c605 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -45,5 +45,5 @@ jobs: run: eval $(aws ecr get-login --no-include-email) - name: Push Docker image to AWS ECR - run: docker push 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-${{ matrix.package }} + run: docker push 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chromium:${{ matrix.package }} diff --git a/.github/workflows/on-schedule.yml b/.github/workflows/on-schedule.yml index 564eaa5..31fb5be 100644 --- a/.github/workflows/on-schedule.yml +++ b/.github/workflows/on-schedule.yml @@ -16,7 +16,6 @@ jobs: package: - chromium - chromium-headful - # - firefox steps: - name: Checkout From b0b230ba51f604962221a7e60dafc939bcfb471f Mon Sep 17 00:00:00 2001 From: Aleksey Date: Fri, 5 Aug 2022 19:32:52 +0300 Subject: [PATCH 19/79] Revert "fix: headful deployment to AWS (#10)" (#11) This reverts commit 75dca4939acb79a5cf9ba7bd3b9bdce29710ac24. --- .github/workflows/build-docker-image.yml | 2 +- .github/workflows/on-schedule.yml | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index f72c605..84aed13 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -45,5 +45,5 @@ jobs: run: eval $(aws ecr get-login --no-include-email) - name: Push Docker image to AWS ECR - run: docker push 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chromium:${{ matrix.package }} + run: docker push 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-${{ matrix.package }} diff --git a/.github/workflows/on-schedule.yml b/.github/workflows/on-schedule.yml index 31fb5be..564eaa5 100644 --- a/.github/workflows/on-schedule.yml +++ b/.github/workflows/on-schedule.yml @@ -16,6 +16,7 @@ jobs: package: - chromium - chromium-headful + # - firefox steps: - name: Checkout From 1f937f8e5e9de61975b50f320d305db320ebc668 Mon Sep 17 00:00:00 2001 From: Aleksey Date: Mon, 8 Aug 2022 16:35:31 +0300 Subject: [PATCH 20/79] fix: checking update for headful chrome --- .github/workflows/on-schedule.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/on-schedule.yml b/.github/workflows/on-schedule.yml index 564eaa5..8453e01 100644 --- a/.github/workflows/on-schedule.yml +++ b/.github/workflows/on-schedule.yml @@ -4,8 +4,8 @@ on: repository_dispatch: types: check schedule: - # every 12 hours - - cron: '0 */12 * * *' + # every 3 days + - cron: 0 0 * * 3 jobs: check: @@ -16,7 +16,6 @@ jobs: package: - chromium - chromium-headful - # - firefox steps: - name: Checkout @@ -32,7 +31,7 @@ jobs: - name: Check status id: check_status - run: echo ::set-output name=result::$(git tag | grep --quiet ${{ matrix.package }}@${{ steps.get_version.outputs.result }} && echo 'up-to-date' || echo 'outdated') + run: echo ::set-output name=result::$(git tag | grep --quiet chromium@${{ steps.get_version.outputs.result }} && echo 'up-to-date' || echo 'outdated') - name: Print results run: | From 09388d39c1edc34c2d8100057ff0897a17e13e11 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 31 Aug 2022 00:29:00 +0000 Subject: [PATCH 21/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@104.0.5112.?= =?UTF-8?q?101?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index 3ba4082..462c592 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/103.0.5060.134/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/104.0.5112.101/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From 73c4ac6211db4b3279becd04da51cf7e128e9442 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 31 Aug 2022 00:29:04 +0000 Subject: [PATCH 22/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium-headful@104?= =?UTF-8?q?.0.5112.101?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium-headful/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-headful/readme.md b/chromium-headful/readme.md index 046e89c..20b41f8 100644 --- a/chromium-headful/readme.md +++ b/chromium-headful/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/103.0.5060.134/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/104.0.5112.101/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in headful+remote debugging mode From 7d3f3df1bba8f96ac3542c993b38d280ebe26548 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 21 Sep 2022 00:28:38 +0000 Subject: [PATCH 23/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium-headful@105?= =?UTF-8?q?.0.5195.102?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium-headful/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-headful/readme.md b/chromium-headful/readme.md index 20b41f8..f14e3f7 100644 --- a/chromium-headful/readme.md +++ b/chromium-headful/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/104.0.5112.101/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/105.0.5195.102/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in headful+remote debugging mode From 76677f9078772ae89bc94dabb74c5b0e6d0f074a Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 21 Sep 2022 00:28:47 +0000 Subject: [PATCH 24/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@105.0.5195.?= =?UTF-8?q?102?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index 462c592..7032e45 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/104.0.5112.101/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/105.0.5195.102/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From f41cabc0a9466a0e3b6fd28bccb7ae5cc7b2b137 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Fri, 7 Oct 2022 12:32:58 +0300 Subject: [PATCH 25/79] feat(headless): use headless mode chrome (#12) There is no difference with headfull if you use a proper headless mode (i.e. --headless=chrome). NLJ-4044 --- chromium/entrypoint.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chromium/entrypoint.sh b/chromium/entrypoint.sh index 3172e64..452c310 100644 --- a/chromium/entrypoint.sh +++ b/chromium/entrypoint.sh @@ -22,7 +22,7 @@ fi --disable-translate \ --disable-ipc-flooding-protection \ --disable-component-update \ - --headless \ + --headless=chrome \ --hide-scrollbars \ --ignore-certificate-errors \ --ignore-certificate-errors-spki-list \ @@ -37,4 +37,5 @@ fi --safebrowsing-disable-auto-update \ --user-data-dir=/home/chromium/ \ --window-size=1920,1080 \ + --site-per-process\ "$@" From e483e3c782027804a96770bd08f30fc931e7743a Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Fri, 7 Oct 2022 12:42:35 +0300 Subject: [PATCH 26/79] fix: only spp (#14) --- chromium/entrypoint.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/entrypoint.sh b/chromium/entrypoint.sh index 452c310..92e004f 100644 --- a/chromium/entrypoint.sh +++ b/chromium/entrypoint.sh @@ -22,7 +22,7 @@ fi --disable-translate \ --disable-ipc-flooding-protection \ --disable-component-update \ - --headless=chrome \ + --headless \ --hide-scrollbars \ --ignore-certificate-errors \ --ignore-certificate-errors-spki-list \ From e29917ad01c937bb5ffe419847ea5920a4ba6be4 Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion Date: Fri, 7 Oct 2022 12:11:06 +0300 Subject: [PATCH 27/79] feat(image): add chrome build [NLJ-4044] --- .github/workflows/build-docker-image.yml | 1 + chrome/Dockerfile | 40 +++++++++++++++++++++ chrome/Makefile | 28 +++++++++++++++ chrome/entrypoint.sh | 44 ++++++++++++++++++++++++ chrome/license.md | 22 ++++++++++++ chrome/readme.md | 36 +++++++++++++++++++ chromium-headful/Dockerfile | 9 ++--- chromium/Dockerfile | 9 ++--- chromium/entrypoint.sh | 1 - firefox/Dockerfile | 9 ++--- 10 files changed, 186 insertions(+), 13 deletions(-) create mode 100644 chrome/Dockerfile create mode 100644 chrome/Makefile create mode 100644 chrome/entrypoint.sh create mode 100644 chrome/license.md create mode 100644 chrome/readme.md diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 84aed13..06ecc89 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -17,6 +17,7 @@ jobs: package: - chromium - chromium-headful + - chrome steps: - name: Checkout diff --git a/chrome/Dockerfile b/chrome/Dockerfile new file mode 100644 index 0000000..1f5c2e3 --- /dev/null +++ b/chrome/Dockerfile @@ -0,0 +1,40 @@ +FROM ubuntu:bionic + +ARG VERSION +ARG DEBIAN_FRONTEND=noninteractive +ENV RD_PORT=9222 + +RUN apt-get update \ + # https://github.com/phusion/baseimage-docker/issues/319 + && apt-get install --yes apt-utils 2>&1 | grep -v "debconf: delaying package configuration, since apt-utils is not installed" \ + && apt-get install -y wget gnupg \ + && wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - \ + && sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' \ + && apt-get update \ + && apt-get install --no-install-recommends -y \ + google-chrome-stable \ + fonts-ipafont-gothic \ + fonts-wqy-zenhei \ + fonts-thai-tlwg \ + fonts-khmeros \ + fonts-kacst \ + fonts-freefont-ttf \ + libxss1 \ + htop \ + net-tools \ + dumb-init \ + curl \ + socat \ + && rm -rf /var/lib/apt/lists/* + +RUN groupadd chrome +RUN useradd --create-home --gid chrome chrome +RUN chown --recursive chrome:chrome /home/chrome/ + +WORKDIR /home/chrome + +COPY --chown=chrome:chrome entrypoint.sh /home/chrome/ + +USER chrome + +ENTRYPOINT ["dumb-init", "--", "/bin/sh", "/home/chrome/entrypoint.sh"] diff --git a/chrome/Makefile b/chrome/Makefile new file mode 100644 index 0000000..e7bcbaa --- /dev/null +++ b/chrome/Makefile @@ -0,0 +1,28 @@ +.PHONY: get-version build test tags + +CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) + +get-version: + @docker pull ubuntu:bionic > /dev/null 2>&1 + @docker run --rm \ + ubuntu:bionic \ + sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" + +build: + @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) + +test: + @docker run --detach --publish 9222:9222 --name nextools-chrome neuralegion/nextools-chrome + @timeout 20s sh -c "trap 'docker container rm --force nextools-chrome' 0; until curl http://localhost:9222/json/version; do sleep 1; done" + +tags: + @for i in 3 2 1 0 -1; do \ + if [ $$i -ge 0 ]; then \ + tag=`echo $(version) | sed --regexp-extended "s/(\.[0-9]+){$$i}$$//"`; \ + else \ + tag=latest; \ + fi; \ + echo $$tag; \ + docker tag nextools-chrome neuralegion/nextools-chrome:$$tag; \ + git tag --force nextools-chrome@$$tag; \ + done diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh new file mode 100644 index 0000000..0aa7624 --- /dev/null +++ b/chrome/entrypoint.sh @@ -0,0 +1,44 @@ +#!/bin/sh + +if [ "$(ls -A /home/chrome/.fonts/)" ]; then + fc-cache -f -v +fi + +(ulimit -n 65000 || true) && (ulimit -p 65000 || true) && google-chrome-stable \ + --enable-automation \ + --disable-background-networking \ + --disable-background-timer-throttling \ + --disable-backgrounding-occluded-windows \ + --disable-renderer-backgrounding \ + --disable-breakpad \ + --disable-client-side-phishing-detection \ + --disable-default-apps \ + --disable-dev-shm-usage \ + --disable-extensions \ + --disable-gpu \ + --disable-popup-blocking \ + --disable-prompt-on-repost \ + --disable-sync \ + --disable-translate \ + --disable-component-extensions-with-background-pages \ + --deny-permission-prompts \ + --noerrdialogs \ + --disable-hang-monitor \ + --disable-ipc-flooding-protection \ + --disable-component-update \ + --headless=chrome \ + --hide-scrollbars \ + --ignore-certificate-errors \ + --ignore-certificate-errors-spki-list \ + --ignore-ssl-errors \ + --metrics-recording-only \ + --mute-audio \ + --no-first-run \ + --no-sandbox \ + --no-default-browser-check \ + --remote-debugging-address=0.0.0.0 \ + --remote-debugging-port="$RD_PORT" \ + --safebrowsing-disable-auto-update \ + --user-data-dir=/home/chrome/ \ + --window-size=1920,1080 \ + "$@" diff --git a/chrome/license.md b/chrome/license.md new file mode 100644 index 0000000..c5ac205 --- /dev/null +++ b/chrome/license.md @@ -0,0 +1,22 @@ +# The MIT License (MIT) + +* Copyright (c) 2018–2020 Kir Belevich +* Copyright (c) 2020–present NexTools + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/chrome/readme.md b/chrome/readme.md new file mode 100644 index 0000000..96294a0 --- /dev/null +++ b/chrome/readme.md @@ -0,0 +1,36 @@ +# chrome + +Dockerized Chrome + +## Usage + +### Docker Hub + +```sh +docker run -it --rm -p 9222:9222 neuralegion/nextools-chrome: +``` +--> + +## How to + +### specify a different port + +Container uses a `RD_PORT` [environment variable](https://docs.docker.com/engine/reference/commandline/run/#set-environment-variables--e---env---env-file), which is `9222` by default: + +``` +docker run -it --rm -p 9223:9223 -e RD_PORT=9223 neuralegion/nextools-chrome: +``` + +### pass additional Chrome arguments + +``` +docker run -it --rm -p 9222:9222 neuralegion/nextools-chrome: --some-chrome-arg +``` + +### add custom fonts + +It's possible to mount a folder with custom fonts to be used later by Chrome: + +``` +docker run -it --rm -p 9222:9222 -v $(pwd)/path/to/fonts:/home/chrome/.fonts neuralegion/nextools-chrome: +``` diff --git a/chromium-headful/Dockerfile b/chromium-headful/Dockerfile index f3ee2f4..05a3a43 100644 --- a/chromium-headful/Dockerfile +++ b/chromium-headful/Dockerfile @@ -16,10 +16,11 @@ RUN apt-get update \ curl \ xvfb \ socat \ - && rm -rf /var/lib/apt/lists/* \ - && groupadd chromium \ - && useradd --create-home --gid chromium chromium \ - && chown --recursive chromium:chromium /home/chromium/ + && rm -rf /var/lib/apt/lists/* + +RUN groupadd chromium +RUN useradd --create-home --gid chromium chromium +RUN chown --recursive chromium:chromium /home/chromium/ VOLUME ["/home/chromium/.fonts"] diff --git a/chromium/Dockerfile b/chromium/Dockerfile index 9e08281..2d6a343 100644 --- a/chromium/Dockerfile +++ b/chromium/Dockerfile @@ -14,10 +14,11 @@ RUN apt-get update \ fontconfig \ chromium-browser=${VERSION}\* \ curl \ - && rm -rf /var/lib/apt/lists/* \ - && groupadd chromium \ - && useradd --create-home --gid chromium chromium \ - && chown --recursive chromium:chromium /home/chromium/ + && rm -rf /var/lib/apt/lists/* + +RUN groupadd chromium +RUN useradd --create-home --gid chromium chromium +RUN chown --recursive chromium:chromium /home/chromium/ VOLUME ["/home/chromium/.fonts"] diff --git a/chromium/entrypoint.sh b/chromium/entrypoint.sh index 92e004f..3172e64 100644 --- a/chromium/entrypoint.sh +++ b/chromium/entrypoint.sh @@ -37,5 +37,4 @@ fi --safebrowsing-disable-auto-update \ --user-data-dir=/home/chromium/ \ --window-size=1920,1080 \ - --site-per-process\ "$@" diff --git a/firefox/Dockerfile b/firefox/Dockerfile index 6a4cbfe..869e839 100644 --- a/firefox/Dockerfile +++ b/firefox/Dockerfile @@ -17,10 +17,11 @@ RUN apt-get update \ socat \ fontconfig \ firefox-trunk=${VERSION}\* \ - && rm -rf /var/lib/apt/lists/* \ - && groupadd firefox \ - && useradd --create-home --gid firefox firefox \ - && chown --recursive firefox:firefox /home/firefox/ + && rm -rf /var/lib/apt/lists/* + +RUN groupadd firefox +RUN useradd --create-home --gid firefox firefox +RUN chown --recursive firefox:firefox /home/firefox/ VOLUME ["/home/firefox/.fonts"] From 3379a10f8b5f002efc23032da7d17b9c707ed44a Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion <89640567+shevchenkov-neuralegion@users.noreply.github.com> Date: Tue, 11 Oct 2022 14:12:12 +0300 Subject: [PATCH 28/79] fix: disable print option (#15) add the option to init sh for disabling the print context menu that causes crashes of the render process. --- chrome/entrypoint.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 0aa7624..ac2ad2d 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -22,6 +22,7 @@ fi --disable-translate \ --disable-component-extensions-with-background-pages \ --deny-permission-prompts \ + --disable-print-preview \ --noerrdialogs \ --disable-hang-monitor \ --disable-ipc-flooding-protection \ From dbc5c48497f836b78c29c44e4b041cca66d5e368 Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion <89640567+shevchenkov-neuralegion@users.noreply.github.com> Date: Wed, 12 Oct 2022 18:12:10 +0300 Subject: [PATCH 29/79] fix(chrome): use headless=true instead 'chrome' (#16) --- chrome/entrypoint.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index ac2ad2d..25847a1 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -27,7 +27,8 @@ fi --disable-hang-monitor \ --disable-ipc-flooding-protection \ --disable-component-update \ - --headless=chrome \ + # --headless=chrome \ + --headless --hide-scrollbars \ --ignore-certificate-errors \ --ignore-certificate-errors-spki-list \ From 849c02d086cb7bf7abb7f1a206491146d44624bd Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion Date: Wed, 12 Oct 2022 19:41:45 +0300 Subject: [PATCH 30/79] fix(chrome): add backslash to entrypoint.sh --- chrome/entrypoint.sh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 25847a1..e2a9ca7 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -27,8 +27,7 @@ fi --disable-hang-monitor \ --disable-ipc-flooding-protection \ --disable-component-update \ - # --headless=chrome \ - --headless + --headless \ --hide-scrollbars \ --ignore-certificate-errors \ --ignore-certificate-errors-spki-list \ From fa6c42077e8399cbddd05d8f8820019e8181a08d Mon Sep 17 00:00:00 2001 From: Goncharenko Alexander <61147910+gasRU76@users.noreply.github.com> Date: Mon, 24 Oct 2022 09:51:17 +0300 Subject: [PATCH 31/79] fix: processing sigterm signal (#19) --- chrome/entrypoint.sh | 2 +- chromium/entrypoint.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index e2a9ca7..d74e8b2 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -4,7 +4,7 @@ if [ "$(ls -A /home/chrome/.fonts/)" ]; then fc-cache -f -v fi -(ulimit -n 65000 || true) && (ulimit -p 65000 || true) && google-chrome-stable \ +(ulimit -n 65000 || true) && (ulimit -p 65000 || true) && exec google-chrome-stable \ --enable-automation \ --disable-background-networking \ --disable-background-timer-throttling \ diff --git a/chromium/entrypoint.sh b/chromium/entrypoint.sh index 3172e64..5895f88 100644 --- a/chromium/entrypoint.sh +++ b/chromium/entrypoint.sh @@ -4,7 +4,7 @@ if [ "$(ls -A /home/chromium/.fonts/)" ]; then fc-cache -f -v fi -(ulimit -n 65000 || true) && (ulimit -p 65000 || true) && /usr/bin/chromium-browser \ +(ulimit -n 65000 || true) && (ulimit -p 65000 || true) && exec /usr/bin/chromium-browser \ --enable-automation \ --disable-background-networking \ --disable-background-timer-throttling \ From dc67556606001ae2d5c418b8a6a8826ffb4e58dd Mon Sep 17 00:00:00 2001 From: Alexander Kutsan Date: Wed, 26 Oct 2022 11:26:35 +0200 Subject: [PATCH 32/79] fix: run chrome in headless=chrome mode (#17) Run chrome browser in headless=chrome mode. Add socat fort forwarding as workaround for https://bugs.chromium.org/p/chromium/issues/detail?id=1373872 [NLJ-4044] --- chrome/entrypoint.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index d74e8b2..4cb3e92 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -4,6 +4,9 @@ if [ "$(ls -A /home/chrome/.fonts/)" ]; then fc-cache -f -v fi +ip=$(hostname --ip-address) +socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & + (ulimit -n 65000 || true) && (ulimit -p 65000 || true) && exec google-chrome-stable \ --enable-automation \ --disable-background-networking \ @@ -27,7 +30,7 @@ fi --disable-hang-monitor \ --disable-ipc-flooding-protection \ --disable-component-update \ - --headless \ + --headless=chrome \ --hide-scrollbars \ --ignore-certificate-errors \ --ignore-certificate-errors-spki-list \ From e4b644948e6ac7f604971835daf4150d324a8728 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 16 Nov 2022 00:24:20 +0000 Subject: [PATCH 33/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@107.0.5304.?= =?UTF-8?q?87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index 7032e45..2eaf676 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/105.0.5195.102/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/107.0.5304.87/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From 3ae91ffce06c03fb1f8488221b69dbdcb72e38b0 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 16 Nov 2022 00:24:33 +0000 Subject: [PATCH 34/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium-headful@107?= =?UTF-8?q?.0.5304.87?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium-headful/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-headful/readme.md b/chromium-headful/readme.md index f14e3f7..a36e823 100644 --- a/chromium-headful/readme.md +++ b/chromium-headful/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/105.0.5195.102/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/107.0.5304.87/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in headful+remote debugging mode From 54a6e56125486d78a85299bc76990b03992317f6 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 7 Dec 2022 00:21:12 +0000 Subject: [PATCH 35/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@108.0.5359.?= =?UTF-8?q?71?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index 2eaf676..13adc93 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/107.0.5304.87/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/108.0.5359.71/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From cf7adf3ba4bb91c9bcceadbdad9860d49d3a8937 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 7 Dec 2022 00:21:20 +0000 Subject: [PATCH 36/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium-headful@108?= =?UTF-8?q?.0.5359.71?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium-headful/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-headful/readme.md b/chromium-headful/readme.md index a36e823..7e76344 100644 --- a/chromium-headful/readme.md +++ b/chromium-headful/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/107.0.5304.87/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/108.0.5359.71/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in headful+remote debugging mode From 2a21bba90172a5974d083a5a9827b1d8887336c4 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 25 Jan 2023 00:21:23 +0000 Subject: [PATCH 37/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@109.0.5414.?= =?UTF-8?q?74?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index 13adc93..a65169d 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/108.0.5359.71/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/109.0.5414.74/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From 0fdcfbd33a0880ad0080c26a5021209766b1567e Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 25 Jan 2023 00:21:41 +0000 Subject: [PATCH 38/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium-headful@109?= =?UTF-8?q?.0.5414.74?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium-headful/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-headful/readme.md b/chromium-headful/readme.md index 7e76344..bc92f78 100644 --- a/chromium-headful/readme.md +++ b/chromium-headful/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/108.0.5359.71/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/109.0.5414.74/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in headful+remote debugging mode From 30217416d93c658ca1ce1ee7adb5c74d77135b1a Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 22 Feb 2023 00:20:04 +0000 Subject: [PATCH 39/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@110.0.5481.?= =?UTF-8?q?100?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index a65169d..3e2f0c2 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/109.0.5414.74/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/110.0.5481.100/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From 7b083f92cef1e72b702bf35aa2b8b4a4a9c16fab Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 22 Feb 2023 00:20:24 +0000 Subject: [PATCH 40/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium-headful@110?= =?UTF-8?q?.0.5481.100?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium-headful/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-headful/readme.md b/chromium-headful/readme.md index bc92f78..b81d9cd 100644 --- a/chromium-headful/readme.md +++ b/chromium-headful/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/109.0.5414.74/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/110.0.5481.100/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in headful+remote debugging mode From 1ede6db2706ba27cb4387487ebfe6631f06af237 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 15 Mar 2023 00:21:31 +0000 Subject: [PATCH 41/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@111.0.5563.?= =?UTF-8?q?64?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index 3e2f0c2..af0f8f7 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/110.0.5481.100/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/111.0.5563.64/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From 0c4c78904db4168b3ceae6f771c16153b5df0b80 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 15 Mar 2023 00:21:33 +0000 Subject: [PATCH 42/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium-headful@111?= =?UTF-8?q?.0.5563.64?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium-headful/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium-headful/readme.md b/chromium-headful/readme.md index b81d9cd..0fee5c7 100644 --- a/chromium-headful/readme.md +++ b/chromium-headful/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/110.0.5481.100/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/111.0.5563.64/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in headful+remote debugging mode From bf46d0590465659e394dfc202de3a2678a3e1ea9 Mon Sep 17 00:00:00 2001 From: GitHub Date: Wed, 19 Apr 2023 00:23:41 +0000 Subject: [PATCH 43/79] =?UTF-8?q?=E2=99=BB=EF=B8=8F=20chromium@112.0.5615.?= =?UTF-8?q?49?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- chromium/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chromium/readme.md b/chromium/readme.md index af0f8f7..9c40fa3 100644 --- a/chromium/readme.md +++ b/chromium/readme.md @@ -1,6 +1,6 @@ # chromium -[![version](https://flat.badgen.net/badge/version/111.0.5563.64/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) +[![version](https://flat.badgen.net/badge/version/112.0.5615.49/blue)](https://www.chromestatus.com/features/schedule) [![size](https://flat.badgen.net/badge/size/20/blue)](https://hub.docker.com/repository/docker/nextools/chromium/tags) Dockerized Chromium in [headless + remote debugging mode](https://chromium.googlesource.com/chromium/src/+/lkgr/headless/README.md). From 3bd5b7b3eaf213d6084771d355956de922f9e096 Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion <89640567+shevchenkov-neuralegion@users.noreply.github.com> Date: Thu, 8 Jun 2023 11:59:00 +0300 Subject: [PATCH 44/79] fix(oopif): add 'site-per-process' flag (#20) fix(oopif): add 'site-per-process' flag into chrome properties --- chrome/entrypoint.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 4cb3e92..d9cfded 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -45,4 +45,5 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --safebrowsing-disable-auto-update \ --user-data-dir=/home/chrome/ \ --window-size=1920,1080 \ + --site-per-process "$@" From eb215cdb00adb004d81c9873091748dbf5929d89 Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion Date: Thu, 8 Jun 2023 12:43:29 +0300 Subject: [PATCH 45/79] fix(chrome): properties list --- chrome/entrypoint.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index d9cfded..78110d7 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -45,5 +45,5 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --safebrowsing-disable-auto-update \ --user-data-dir=/home/chrome/ \ --window-size=1920,1080 \ - --site-per-process + --site-per-process \ "$@" From dd9912bcaa744f5221786b8a3a21146aea319964 Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion Date: Thu, 8 Jun 2023 13:16:20 +0300 Subject: [PATCH 46/79] revert(chrome): fix properties list --- chrome/entrypoint.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 78110d7..4cb3e92 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -45,5 +45,4 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --safebrowsing-disable-auto-update \ --user-data-dir=/home/chrome/ \ --window-size=1920,1080 \ - --site-per-process \ "$@" From b1e8d891f3b2fc2febb53260b771b50e1fd8287c Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion Date: Thu, 8 Jun 2023 15:24:30 +0300 Subject: [PATCH 47/79] fix(chrome): pin chrome version for nextools-chrome image --- chrome/Makefile | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/chrome/Makefile b/chrome/Makefile index e7bcbaa..94c3d01 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -2,11 +2,14 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) +# get-version: +# @docker pull ubuntu:bionic > /dev/null 2>&1 +# @docker run --rm \ +# ubuntu:bionic \ +# sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" + get-version: - @docker pull ubuntu:bionic > /dev/null 2>&1 - @docker run --rm \ - ubuntu:bionic \ - sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" + echo "110.0.5481.177-1" build: @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) From eb3e3eaf342d2bc94a03c33a4524db9f43c49111 Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion Date: Thu, 8 Jun 2023 15:29:18 +0300 Subject: [PATCH 48/79] fix(chrome): add usage of version arg in dockerfile --- chrome/Dockerfile | 2 +- chrome/Makefile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/chrome/Dockerfile b/chrome/Dockerfile index 1f5c2e3..b27d016 100644 --- a/chrome/Dockerfile +++ b/chrome/Dockerfile @@ -12,7 +12,7 @@ RUN apt-get update \ && sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' \ && apt-get update \ && apt-get install --no-install-recommends -y \ - google-chrome-stable \ + google-chrome-stable=${VERSION}\* \ fonts-ipafont-gothic \ fonts-wqy-zenhei \ fonts-thai-tlwg \ diff --git a/chrome/Makefile b/chrome/Makefile index 94c3d01..2fba062 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -9,7 +9,7 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) # sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" get-version: - echo "110.0.5481.177-1" + @echo "110.0.5481.177-1" build: @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) From 5a140333e319aff0402d212eed93eeca49475175 Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion Date: Thu, 8 Jun 2023 15:37:54 +0300 Subject: [PATCH 49/79] fix(chrome): add usage of version arg --- chrome/Dockerfile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/chrome/Dockerfile b/chrome/Dockerfile index b27d016..13fbab4 100644 --- a/chrome/Dockerfile +++ b/chrome/Dockerfile @@ -10,9 +10,10 @@ RUN apt-get update \ && apt-get install -y wget gnupg \ && wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - \ && sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' \ + && wget --no-verbose -O /tmp/chrome.deb https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${VERSION}_amd64.deb \ && apt-get update \ && apt-get install --no-install-recommends -y \ - google-chrome-stable=${VERSION}\* \ + /tmp/chrome.deb \ fonts-ipafont-gothic \ fonts-wqy-zenhei \ fonts-thai-tlwg \ @@ -25,6 +26,7 @@ RUN apt-get update \ dumb-init \ curl \ socat \ + && rm /tmp/chrome.deb \ && rm -rf /var/lib/apt/lists/* RUN groupadd chrome From b81c095a213ebc183846e66b75af9030379dbe3f Mon Sep 17 00:00:00 2001 From: shevchenkov-neuralegion Date: Thu, 8 Jun 2023 15:45:09 +0300 Subject: [PATCH 50/79] fix(chrome): downgrade version to 108.0.5359.124-1 --- chrome/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Makefile b/chrome/Makefile index 2fba062..7e2234f 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -9,7 +9,7 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) # sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" get-version: - @echo "110.0.5481.177-1" + @echo "108.0.5359.124-1" build: @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) From 0139ff96d67af33ba337c088e33eaebadbdd5bb4 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Tue, 9 Jan 2024 10:51:47 +0300 Subject: [PATCH 51/79] Revert "fix(chrome): downgrade version to 108.0.5359.124-1" This reverts commit b81c095a213ebc183846e66b75af9030379dbe3f. --- chrome/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Makefile b/chrome/Makefile index 7e2234f..2fba062 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -9,7 +9,7 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) # sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" get-version: - @echo "108.0.5359.124-1" + @echo "110.0.5481.177-1" build: @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) From 95997912a6bdfc05dd519d14b860a19eebaffcfe Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Tue, 9 Jan 2024 15:47:20 +0300 Subject: [PATCH 52/79] update to latest stable --- chrome/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Makefile b/chrome/Makefile index 2fba062..c7ae2b5 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -9,7 +9,7 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) # sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" get-version: - @echo "110.0.5481.177-1" + @echo "120.0.6099.199-1" build: @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) From 7b799b5607b999e5a83018454f8b16f31f45b1ac Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Tue, 9 Jan 2024 18:43:40 +0300 Subject: [PATCH 53/79] ci test --- chrome/entrypoint.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 4cb3e92..1f2c60f 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -4,6 +4,7 @@ if [ "$(ls -A /home/chrome/.fonts/)" ]; then fc-cache -f -v fi +# just ci test ip=$(hostname --ip-address) socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & From f030591628b0503a472fe6f8b25eefe53e54c58a Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Tue, 9 Jan 2024 18:52:24 +0300 Subject: [PATCH 54/79] fix: aws --- .github/workflows/build-docker-image.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 06ecc89..206d128 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -25,9 +25,9 @@ jobs: - name: Configure AWS credentials uses: aws-actions/configure-aws-credentials@v1 with: - aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} + aws-access-key-id: ${{ vars.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} - aws-region: ${{ secrets.AWS_DEFAULT_REGION }} + aws-region: ${{ vars.AWS_DEFAULT_REGION }} - name: Get version id: get_version From 776a608c65769dc0148bae93da1d6183e9bcc561 Mon Sep 17 00:00:00 2001 From: anatol Date: Tue, 9 Jan 2024 20:04:44 +0400 Subject: [PATCH 55/79] Update configure-aws-credentials to v4 --- .github/workflows/build-docker-image.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 206d128..6b8e1a6 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -23,7 +23,7 @@ jobs: - name: Checkout uses: actions/checkout@v2 - name: Configure AWS credentials - uses: aws-actions/configure-aws-credentials@v1 + uses: aws-actions/configure-aws-credentials@v4 with: aws-access-key-id: ${{ vars.AWS_ACCESS_KEY_ID }} aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} From c8f6b6e5d6be86ae56f458dc374e72694837a305 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Wed, 10 Jan 2024 11:21:00 +0300 Subject: [PATCH 56/79] Revert "ci test" This reverts commit 7b799b5607b999e5a83018454f8b16f31f45b1ac. --- chrome/entrypoint.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 1f2c60f..4cb3e92 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -4,7 +4,6 @@ if [ "$(ls -A /home/chrome/.fonts/)" ]; then fc-cache -f -v fi -# just ci test ip=$(hostname --ip-address) socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & From 632c93097004ddaf73a58ef23df264eb2d8e1170 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Wed, 10 Jan 2024 14:12:14 +0300 Subject: [PATCH 57/79] disable no sandbox --- chrome/entrypoint.sh | 1 - 1 file changed, 1 deletion(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 4cb3e92..1a1374f 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -38,7 +38,6 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --metrics-recording-only \ --mute-audio \ --no-first-run \ - --no-sandbox \ --no-default-browser-check \ --remote-debugging-address=0.0.0.0 \ --remote-debugging-port="$RD_PORT" \ From e1ffc9ffa6da9f374d09d23868e444d9d78b2d3b Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Wed, 10 Jan 2024 16:26:29 +0300 Subject: [PATCH 58/79] try omesa fix --- chrome/Dockerfile | 1 + chrome/entrypoint.sh | 2 ++ 2 files changed, 3 insertions(+) diff --git a/chrome/Dockerfile b/chrome/Dockerfile index 13fbab4..0b873a1 100644 --- a/chrome/Dockerfile +++ b/chrome/Dockerfile @@ -13,6 +13,7 @@ RUN apt-get update \ && wget --no-verbose -O /tmp/chrome.deb https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${VERSION}_amd64.deb \ && apt-get update \ && apt-get install --no-install-recommends -y \ + libosmesa \ /tmp/chrome.deb \ fonts-ipafont-gothic \ fonts-wqy-zenhei \ diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 1a1374f..770c8de 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -38,10 +38,12 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --metrics-recording-only \ --mute-audio \ --no-first-run \ + --no-sandbox \ --no-default-browser-check \ --remote-debugging-address=0.0.0.0 \ --remote-debugging-port="$RD_PORT" \ --safebrowsing-disable-auto-update \ --user-data-dir=/home/chrome/ \ --window-size=1920,1080 \ + --use-gl=osmesa \ "$@" From 3f7ff05da2dc702be33ebf988ef1d881032f8019 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Wed, 10 Jan 2024 16:33:11 +0300 Subject: [PATCH 59/79] try omesa fix 2 --- chrome/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Dockerfile b/chrome/Dockerfile index 0b873a1..f0d6f86 100644 --- a/chrome/Dockerfile +++ b/chrome/Dockerfile @@ -13,7 +13,7 @@ RUN apt-get update \ && wget --no-verbose -O /tmp/chrome.deb https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${VERSION}_amd64.deb \ && apt-get update \ && apt-get install --no-install-recommends -y \ - libosmesa \ + libosmesa6 \ /tmp/chrome.deb \ fonts-ipafont-gothic \ fonts-wqy-zenhei \ From a72fca40eb8ae100b5c1a5460af4527daa3ffe32 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Wed, 10 Jan 2024 17:53:07 +0300 Subject: [PATCH 60/79] Revert "try omesa fix 2" This reverts commit 3f7ff05da2dc702be33ebf988ef1d881032f8019. --- chrome/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Dockerfile b/chrome/Dockerfile index f0d6f86..0b873a1 100644 --- a/chrome/Dockerfile +++ b/chrome/Dockerfile @@ -13,7 +13,7 @@ RUN apt-get update \ && wget --no-verbose -O /tmp/chrome.deb https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${VERSION}_amd64.deb \ && apt-get update \ && apt-get install --no-install-recommends -y \ - libosmesa6 \ + libosmesa \ /tmp/chrome.deb \ fonts-ipafont-gothic \ fonts-wqy-zenhei \ From 30f504876f1b689d8c3bfa98eaa1890a9ddec332 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Wed, 10 Jan 2024 17:53:14 +0300 Subject: [PATCH 61/79] Revert "try omesa fix" This reverts commit e1ffc9ffa6da9f374d09d23868e444d9d78b2d3b. --- chrome/Dockerfile | 1 - chrome/entrypoint.sh | 2 -- 2 files changed, 3 deletions(-) diff --git a/chrome/Dockerfile b/chrome/Dockerfile index 0b873a1..13fbab4 100644 --- a/chrome/Dockerfile +++ b/chrome/Dockerfile @@ -13,7 +13,6 @@ RUN apt-get update \ && wget --no-verbose -O /tmp/chrome.deb https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${VERSION}_amd64.deb \ && apt-get update \ && apt-get install --no-install-recommends -y \ - libosmesa \ /tmp/chrome.deb \ fonts-ipafont-gothic \ fonts-wqy-zenhei \ diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 770c8de..1a1374f 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -38,12 +38,10 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --metrics-recording-only \ --mute-audio \ --no-first-run \ - --no-sandbox \ --no-default-browser-check \ --remote-debugging-address=0.0.0.0 \ --remote-debugging-port="$RD_PORT" \ --safebrowsing-disable-auto-update \ --user-data-dir=/home/chrome/ \ --window-size=1920,1080 \ - --use-gl=osmesa \ "$@" From 364f299153f53e34b3571d14e3d8ca5381f1a1d3 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Wed, 10 Jan 2024 17:53:45 +0300 Subject: [PATCH 62/79] Revert "disable no sandbox" This reverts commit 632c93097004ddaf73a58ef23df264eb2d8e1170. --- chrome/entrypoint.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 1a1374f..4cb3e92 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -38,6 +38,7 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --metrics-recording-only \ --mute-audio \ --no-first-run \ + --no-sandbox \ --no-default-browser-check \ --remote-debugging-address=0.0.0.0 \ --remote-debugging-port="$RD_PORT" \ From 0c7c3325c4376b9ce275c6a73642a36425dd0107 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Thu, 11 Jan 2024 12:50:31 +0300 Subject: [PATCH 63/79] Revert "update to latest stable" This reverts commit 95997912a6bdfc05dd519d14b860a19eebaffcfe. --- chrome/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Makefile b/chrome/Makefile index c7ae2b5..2fba062 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -9,7 +9,7 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) # sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" get-version: - @echo "120.0.6099.199-1" + @echo "110.0.5481.177-1" build: @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) From 023c08f5c78015e16baed0f3c910f631ebe8477e Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Thu, 11 Jan 2024 12:50:41 +0300 Subject: [PATCH 64/79] Revert "Revert "fix(chrome): downgrade version to 108.0.5359.124-1"" This reverts commit 0139ff96d67af33ba337c088e33eaebadbdd5bb4. --- chrome/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Makefile b/chrome/Makefile index 2fba062..7e2234f 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -9,7 +9,7 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) # sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" get-version: - @echo "110.0.5481.177-1" + @echo "108.0.5359.124-1" build: @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) From 6a382bdee41737d7330060a2c26b6ba670c020d3 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Tue, 23 Jan 2024 16:08:11 +0300 Subject: [PATCH 65/79] Revert "Revert "Revert "fix(chrome): downgrade version to 108.0.5359.124-1""" This reverts commit 023c08f5c78015e16baed0f3c910f631ebe8477e. --- chrome/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Makefile b/chrome/Makefile index 7e2234f..2fba062 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -9,7 +9,7 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) # sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" get-version: - @echo "108.0.5359.124-1" + @echo "110.0.5481.177-1" build: @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) From 4b95364bfccdf6c36b4c28d6827cc5fa3181ea21 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Tue, 23 Jan 2024 16:08:22 +0300 Subject: [PATCH 66/79] Revert "Revert "update to latest stable"" This reverts commit 0c7c3325c4376b9ce275c6a73642a36425dd0107. --- chrome/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Makefile b/chrome/Makefile index 2fba062..c7ae2b5 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -9,7 +9,7 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) # sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" get-version: - @echo "110.0.5481.177-1" + @echo "120.0.6099.199-1" build: @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) From 4fb8052bbbd749487dfb517797e50e0a8ca92aa1 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Tue, 23 Jan 2024 16:07:34 +0300 Subject: [PATCH 67/79] update to 120.0.6099.224 with Artem config --- chrome/Dockerfile | 41 ++++++++-------------------- chrome/Makefile | 2 +- chrome/entrypoint.sh | 63 +++++++++++++++++++++++++------------------- 3 files changed, 48 insertions(+), 58 deletions(-) diff --git a/chrome/Dockerfile b/chrome/Dockerfile index 13fbab4..0a167bb 100644 --- a/chrome/Dockerfile +++ b/chrome/Dockerfile @@ -1,42 +1,23 @@ -FROM ubuntu:bionic +FROM ubuntu:latest -ARG VERSION -ARG DEBIAN_FRONTEND=noninteractive -ENV RD_PORT=9222 +ENV DEBIAN_FRONTEND noninteractive +ENV DBUS_SESSION_BUS_ADDRESS disabled: RUN apt-get update \ - # https://github.com/phusion/baseimage-docker/issues/319 - && apt-get install --yes apt-utils 2>&1 | grep -v "debconf: delaying package configuration, since apt-utils is not installed" \ && apt-get install -y wget gnupg \ - && wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | apt-key add - \ - && sh -c 'echo "deb [arch=amd64] http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' \ - && wget --no-verbose -O /tmp/chrome.deb https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${VERSION}_amd64.deb \ + && wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | gpg --dearmor -o /usr/share/keyrings/googlechrome-linux-keyring.gpg \ + && sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/googlechrome-linux-keyring.gpg] https://dl-ssl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' \ && apt-get update \ - && apt-get install --no-install-recommends -y \ - /tmp/chrome.deb \ - fonts-ipafont-gothic \ - fonts-wqy-zenhei \ - fonts-thai-tlwg \ - fonts-khmeros \ - fonts-kacst \ - fonts-freefont-ttf \ - libxss1 \ - htop \ - net-tools \ - dumb-init \ - curl \ - socat \ - && rm /tmp/chrome.deb \ - && rm -rf /var/lib/apt/lists/* + && apt-get install -y google-chrome-stable fonts-ipafont-gothic fonts-wqy-zenhei fonts-thai-tlwg fonts-khmeros fonts-kacst fonts-freefont-ttf libxss1 dumb-init socat dbus dbus-x11 \ + --no-install-recommends \ + && service dbus start \ + && rm -rf /var/lib/apt/lists/* \ + && groupadd -r chrome && useradd -rm -g chrome -G audio,video chrome -RUN groupadd chrome -RUN useradd --create-home --gid chrome chrome -RUN chown --recursive chrome:chrome /home/chrome/ +USER chrome WORKDIR /home/chrome COPY --chown=chrome:chrome entrypoint.sh /home/chrome/ -USER chrome - ENTRYPOINT ["dumb-init", "--", "/bin/sh", "/home/chrome/entrypoint.sh"] diff --git a/chrome/Makefile b/chrome/Makefile index c7ae2b5..ec2a19f 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -9,7 +9,7 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) # sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" get-version: - @echo "120.0.6099.199-1" + @echo "120.0.6099.224-1" build: @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 4cb3e92..f5d7846 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -1,48 +1,57 @@ #!/bin/sh +#!/bin/sh -if [ "$(ls -A /home/chrome/.fonts/)" ]; then - fc-cache -f -v -fi - -ip=$(hostname --ip-address) -socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & +socat tcp-listen:9222,bind="$(hostname --ip-address)",fork tcp:127.0.0.1:9222 & -(ulimit -n 65000 || true) && (ulimit -p 65000 || true) && exec google-chrome-stable \ - --enable-automation \ +google-chrome-stable \ + --allow-pre-commit-input \ --disable-background-networking \ --disable-background-timer-throttling \ --disable-backgrounding-occluded-windows \ - --disable-renderer-backgrounding \ --disable-breakpad \ --disable-client-side-phishing-detection \ + --disable-component-extensions-with-background-pages \ + --disable-component-update \ + --disable-setuid-sandbox \ --disable-default-apps \ + --disable-speech-api \ --disable-dev-shm-usage \ + --disable-domain-reliability \ + --disable-notifications \ --disable-extensions \ - --disable-gpu \ + --disable-field-trial-config \ + --disable-hang-monitor \ + --disable-infobars \ + --disable-ipc-flooding-protection \ --disable-popup-blocking \ --disable-prompt-on-repost \ + --disable-renderer-backgrounding \ + --disable-search-engine-choice-screen \ + --disable-offer-store-unmasked-wallet-cards \ --disable-sync \ - --disable-translate \ - --disable-component-extensions-with-background-pages \ - --deny-permission-prompts \ --disable-print-preview \ --noerrdialogs \ - --disable-hang-monitor \ - --disable-ipc-flooding-protection \ - --disable-component-update \ - --headless=chrome \ + --enable-automation \ + --export-tagged-pdf \ + --force-color-profile=srgb \ + --metrics-recording-only \ + --no-first-run \ + --no-default-browser-check \ + --no-sandbox \ + --no-zygote \ + --start-maximized \ + --password-store=basic \ + --use-mock-keychain \ + --window-size=1980,1080 \ + --disable-features=Translate,AcceptCHFrame,MediaRouter,OptimizationHints,ProcessPerSiteUpToMainFrameThreshold \ + --enable-features=NetworkServiceInProcess2 \ + --user-data-dir=/home/chrome/ \ + --headless=new \ --hide-scrollbars \ + --mute-audio \ --ignore-certificate-errors \ --ignore-certificate-errors-spki-list \ --ignore-ssl-errors \ - --metrics-recording-only \ - --mute-audio \ - --no-first-run \ - --no-sandbox \ - --no-default-browser-check \ --remote-debugging-address=0.0.0.0 \ - --remote-debugging-port="$RD_PORT" \ - --safebrowsing-disable-auto-update \ - --user-data-dir=/home/chrome/ \ - --window-size=1920,1080 \ - "$@" + --remote-debugging-port=9222 + about:blank From c803a9a158f659a95f4d1e9c707c51c3f27afbd3 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Wed, 24 Jan 2024 13:27:05 +0300 Subject: [PATCH 68/79] flags revisioned --- chrome/entrypoint.sh | 49 +++++++++++++++++++++++++------------------- 1 file changed, 28 insertions(+), 21 deletions(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index f5d7846..15110d5 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -1,17 +1,23 @@ #!/bin/sh -#!/bin/sh -socat tcp-listen:9222,bind="$(hostname --ip-address)",fork tcp:127.0.0.1:9222 & +if [ "$(ls -A /home/chrome/.fonts/)" ]; then + fc-cache -f -v +fi + +ip=$(hostname --ip-address) +socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & -google-chrome-stable \ +(ulimit -n 65000 || true) && (ulimit -p 65000 || true) && exec google-chrome-stable \ + --enable-automation \ + --silent-debugger-extension-api \ --allow-pre-commit-input \ + --ash-no-nudges \ --disable-background-networking \ --disable-background-timer-throttling \ --disable-backgrounding-occluded-windows \ + --disable-renderer-backgrounding \ --disable-breakpad \ --disable-client-side-phishing-detection \ - --disable-component-extensions-with-background-pages \ - --disable-component-update \ --disable-setuid-sandbox \ --disable-default-apps \ --disable-speech-api \ @@ -20,38 +26,39 @@ google-chrome-stable \ --disable-notifications \ --disable-extensions \ --disable-field-trial-config \ - --disable-hang-monitor \ - --disable-infobars \ - --disable-ipc-flooding-protection \ --disable-popup-blocking \ --disable-prompt-on-repost \ - --disable-renderer-backgrounding \ --disable-search-engine-choice-screen \ --disable-offer-store-unmasked-wallet-cards \ --disable-sync \ + --disable-component-extensions-with-background-pages \ + --deny-permission-prompts \ --disable-print-preview \ --noerrdialogs \ - --enable-automation \ + --disable-hang-monitor \ + --disable-ipc-flooding-protection \ + --disable-component-update \ + --headless=new \ --export-tagged-pdf \ --force-color-profile=srgb \ - --metrics-recording-only \ - --no-first-run \ - --no-default-browser-check \ - --no-sandbox \ --no-zygote \ --start-maximized \ --password-store=basic \ --use-mock-keychain \ - --window-size=1980,1080 \ - --disable-features=Translate,AcceptCHFrame,MediaRouter,OptimizationHints,ProcessPerSiteUpToMainFrameThreshold \ + --disable-features=Translate,AcceptCHFrame,MediaRouter,OptimizationHints,ImprovedCookieControls \ --enable-features=NetworkServiceInProcess2 \ - --user-data-dir=/home/chrome/ \ - --headless=new \ --hide-scrollbars \ - --mute-audio \ --ignore-certificate-errors \ --ignore-certificate-errors-spki-list \ --ignore-ssl-errors \ + --metrics-recording-only \ + --mute-audio \ + --no-first-run \ + --no-sandbox \ + --no-default-browser-check \ --remote-debugging-address=0.0.0.0 \ - --remote-debugging-port=9222 - about:blank + --remote-debugging-port="$RD_PORT" \ + --user-data-dir=/home/chrome/ \ + --window-size=1920,1080 \ + --window-position=0,0 \ + "$@" From 1a519ed4b373e8f1a02ee02b0550d8fa0bfba501 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Wed, 24 Jan 2024 14:34:19 +0300 Subject: [PATCH 69/79] fix: port --- chrome/entrypoint.sh | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 15110d5..d340352 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -4,6 +4,8 @@ if [ "$(ls -A /home/chrome/.fonts/)" ]; then fc-cache -f -v fi +RD_PORT="${RD_PORT:=9222}" + ip=$(hostname --ip-address) socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & @@ -45,7 +47,7 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --start-maximized \ --password-store=basic \ --use-mock-keychain \ - --disable-features=Translate,AcceptCHFrame,MediaRouter,OptimizationHints,ImprovedCookieControls \ + --disable-features=Translate,AcceptCHFrame,MediaRouter,OptimizationHints,ProcessPerSiteUpToMainFrameThreshold,ImprovedCookieControls \ --enable-features=NetworkServiceInProcess2 \ --hide-scrollbars \ --ignore-certificate-errors \ From 72550a2a9e6fd006a65781d2b7efe342ea2ed3b6 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Wed, 24 Jan 2024 15:41:28 +0300 Subject: [PATCH 70/79] fix: changes with select version 121.0.6167.85-1 --- chrome/Dockerfile | 14 ++++++++++---- chrome/Makefile | 5 +++-- chrome/entrypoint.sh | 2 ++ 3 files changed, 15 insertions(+), 6 deletions(-) diff --git a/chrome/Dockerfile b/chrome/Dockerfile index 0a167bb..ab509a8 100644 --- a/chrome/Dockerfile +++ b/chrome/Dockerfile @@ -1,23 +1,29 @@ FROM ubuntu:latest -ENV DEBIAN_FRONTEND noninteractive +ARG VERSION +ARG DEBIAN_FRONTEND=noninteractive ENV DBUS_SESSION_BUS_ADDRESS disabled: +ENV RD_PORT=9222 RUN apt-get update \ + # https://github.com/phusion/baseimage-docker/issues/319 + && apt-get install --yes apt-utils 2>&1 | grep -v "debconf: delaying package configuration, since apt-utils is not installed" \ && apt-get install -y wget gnupg \ && wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | gpg --dearmor -o /usr/share/keyrings/googlechrome-linux-keyring.gpg \ && sh -c 'echo "deb [arch=amd64 signed-by=/usr/share/keyrings/googlechrome-linux-keyring.gpg] https://dl-ssl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list' \ + && wget --no-verbose -O /tmp/chrome.deb https://dl.google.com/linux/chrome/deb/pool/main/g/google-chrome-stable/google-chrome-stable_${VERSION}_amd64.deb \ && apt-get update \ - && apt-get install -y google-chrome-stable fonts-ipafont-gothic fonts-wqy-zenhei fonts-thai-tlwg fonts-khmeros fonts-kacst fonts-freefont-ttf libxss1 dumb-init socat dbus dbus-x11 \ + && apt-get install -y /tmp/chrome.deb fonts-ipafont-gothic fonts-wqy-zenhei fonts-thai-tlwg fonts-khmeros fonts-kacst fonts-freefont-ttf libxss1 dumb-init socat dbus dbus-x11 \ --no-install-recommends \ && service dbus start \ && rm -rf /var/lib/apt/lists/* \ - && groupadd -r chrome && useradd -rm -g chrome -G audio,video chrome + && groupadd -r chrome && useradd --create-home -rm -g chrome -G audio,video chrome -USER chrome WORKDIR /home/chrome COPY --chown=chrome:chrome entrypoint.sh /home/chrome/ +USER chrome + ENTRYPOINT ["dumb-init", "--", "/bin/sh", "/home/chrome/entrypoint.sh"] diff --git a/chrome/Makefile b/chrome/Makefile index ec2a19f..bb55de2 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -1,6 +1,7 @@ .PHONY: get-version build test tags CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) +VERSION:="121.0.6167.85-1" # get-version: # @docker pull ubuntu:bionic > /dev/null 2>&1 @@ -9,10 +10,10 @@ CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) # sh -c "apt-get update --quiet=2 && apt-cache policy chromium-browser | sed --regexp-extended --quiet 's/.*Candidate: ([0-9.]+)-.+/\1/p'" get-version: - @echo "120.0.6099.224-1" + @echo $(VERSION) build: - @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(version) $(CURRENT_DIR) + @docker build --tag neuralegion/nextools-chrome --tag 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-chrome --build-arg VERSION=$(VERSION) $(CURRENT_DIR) test: @docker run --detach --publish 9222:9222 --name nextools-chrome neuralegion/nextools-chrome diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index d340352..054df4c 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -14,6 +14,7 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --silent-debugger-extension-api \ --allow-pre-commit-input \ --ash-no-nudges \ + --disable-gpu-process-crash-limit \ --disable-background-networking \ --disable-background-timer-throttling \ --disable-backgrounding-occluded-windows \ @@ -53,6 +54,7 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --ignore-certificate-errors \ --ignore-certificate-errors-spki-list \ --ignore-ssl-errors \ + --ignore-unknown-auth-factors \ --metrics-recording-only \ --mute-audio \ --no-first-run \ From 4a3a0fc6048857463cc82fffa6a686869e8063a1 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Mon, 19 Feb 2024 13:12:50 +0300 Subject: [PATCH 71/79] update chrome 121.0.6167.184-1 --- chrome/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Makefile b/chrome/Makefile index bb55de2..56c1845 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -1,7 +1,7 @@ .PHONY: get-version build test tags CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) -VERSION:="121.0.6167.85-1" +VERSION:="121.0.6167.184-1" # get-version: # @docker pull ubuntu:bionic > /dev/null 2>&1 From 130790ab983c82fb434149f40c8b25edeccf08f0 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Thu, 22 Feb 2024 17:04:12 +0300 Subject: [PATCH 72/79] --headless=old 122.0.6261.57-1 --- chrome/Makefile | 2 +- chrome/entrypoint.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/chrome/Makefile b/chrome/Makefile index 56c1845..32ce0e3 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -1,7 +1,7 @@ .PHONY: get-version build test tags CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) -VERSION:="121.0.6167.184-1" +VERSION:="122.0.6261.57-1" # get-version: # @docker pull ubuntu:bionic > /dev/null 2>&1 diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 054df4c..cb43580 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -41,7 +41,7 @@ socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & --disable-hang-monitor \ --disable-ipc-flooding-protection \ --disable-component-update \ - --headless=new \ + --headless=old \ --export-tagged-pdf \ --force-color-profile=srgb \ --no-zygote \ From d899f27da69a153443f2195116491811e897b4a4 Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Thu, 22 Feb 2024 18:17:59 +0300 Subject: [PATCH 73/79] fix: remove socat --- chrome/entrypoint.sh | 3 --- 1 file changed, 3 deletions(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index cb43580..96bf758 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -6,9 +6,6 @@ fi RD_PORT="${RD_PORT:=9222}" -ip=$(hostname --ip-address) -socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & - (ulimit -n 65000 || true) && (ulimit -p 65000 || true) && exec google-chrome-stable \ --enable-automation \ --silent-debugger-extension-api \ From 8d4e66b7c116112aab00e5552d9d71208282305a Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Thu, 22 Feb 2024 18:33:45 +0300 Subject: [PATCH 74/79] return socat on localhost --- chrome/entrypoint.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/chrome/entrypoint.sh b/chrome/entrypoint.sh index 96bf758..6496969 100644 --- a/chrome/entrypoint.sh +++ b/chrome/entrypoint.sh @@ -6,6 +6,9 @@ fi RD_PORT="${RD_PORT:=9222}" +ip=$(hostname --ip-address) +socat tcp-listen:$RD_PORT,bind="$ip",fork tcp:127.0.0.1:$RD_PORT & + (ulimit -n 65000 || true) && (ulimit -p 65000 || true) && exec google-chrome-stable \ --enable-automation \ --silent-debugger-extension-api \ @@ -57,7 +60,7 @@ RD_PORT="${RD_PORT:=9222}" --no-first-run \ --no-sandbox \ --no-default-browser-check \ - --remote-debugging-address=0.0.0.0 \ + --remote-debugging-address=127.0.0.1 \ --remote-debugging-port="$RD_PORT" \ --user-data-dir=/home/chrome/ \ --window-size=1920,1080 \ From 6c463073efd8e87ab8bf01fb70707bc380897d2b Mon Sep 17 00:00:00 2001 From: Damir Sharipov Date: Tue, 12 Mar 2024 16:40:59 +0300 Subject: [PATCH 75/79] update chrome to 122.0.6261.111-1 --- chrome/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/chrome/Makefile b/chrome/Makefile index 32ce0e3..4ba8924 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -1,7 +1,7 @@ .PHONY: get-version build test tags CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) -VERSION:="122.0.6261.57-1" +VERSION:="122.0.6261.111-1" # get-version: # @docker pull ubuntu:bionic > /dev/null 2>&1 From ebe17a647c2827eb8f174b0c15c1ad817f523774 Mon Sep 17 00:00:00 2001 From: Anton Karankevich <83635660+anton7c3@users.noreply.github.com> Date: Wed, 21 Aug 2024 15:37:49 +0300 Subject: [PATCH 76/79] feat: switch to chrome 127 (#22) TM-1970 #code-review --- chrome/Dockerfile | 2 +- chrome/Makefile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/chrome/Dockerfile b/chrome/Dockerfile index ab509a8..4b64187 100644 --- a/chrome/Dockerfile +++ b/chrome/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:latest +FROM ubuntu:bionic ARG VERSION ARG DEBIAN_FRONTEND=noninteractive diff --git a/chrome/Makefile b/chrome/Makefile index 4ba8924..a45c056 100644 --- a/chrome/Makefile +++ b/chrome/Makefile @@ -1,7 +1,7 @@ .PHONY: get-version build test tags CURRENT_DIR:=$(shell dirname $(realpath $(firstword $(MAKEFILE_LIST)))) -VERSION:="122.0.6261.111-1" +VERSION:="127.0.6533.88-1" # get-version: # @docker pull ubuntu:bionic > /dev/null 2>&1 From 5bf32e5cee1a0eccbeaf1410029f7a4127fb032f Mon Sep 17 00:00:00 2001 From: Anton Karankevich <83635660+anton7c3@users.noreply.github.com> Date: Wed, 21 Aug 2024 15:53:25 +0300 Subject: [PATCH 77/79] feat(ci): add manual run to Docker Image CI workflow (#23) TM-1970 #code-review --- .github/workflows/build-docker-image.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 6b8e1a6..09e8a6a 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -6,6 +6,7 @@ on: push: branches: - master + workflow_dispatch: jobs: build: From c7f79efe64ae7e5cb31fab8537b65b36b5b8096c Mon Sep 17 00:00:00 2001 From: Alexander Goncharenko Date: Tue, 28 Jan 2025 13:40:25 +0300 Subject: [PATCH 78/79] ci: migrate to AWS oidc authorization --- .github/workflows/build-docker-image.yml | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 09e8a6a..332ff42 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -23,13 +23,17 @@ jobs: steps: - name: Checkout uses: actions/checkout@v2 - - name: Configure AWS credentials + + - name: Configure AWS Credentials uses: aws-actions/configure-aws-credentials@v4 with: - aws-access-key-id: ${{ vars.AWS_ACCESS_KEY_ID }} - aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} + role-to-assume: ${{ vars.AWS_ROLE_TO_ASSUME }} aws-region: ${{ vars.AWS_DEFAULT_REGION }} + - name: Login to Amazon ECR + id: login-ecr + uses: aws-actions/amazon-ecr-login@v2 + - name: Get version id: get_version run: echo ::set-output name=result::$(make --file ${{ matrix.package }}/Makefile get-version) @@ -43,9 +47,6 @@ jobs: - name: Push image to Docker run: docker push neuralegion/nextools-${{ matrix.package }} - - name: Login in ECR - run: eval $(aws ecr get-login --no-include-email) - - name: Push Docker image to AWS ECR run: docker push 454884832027.dkr.ecr.us-east-1.amazonaws.com/nextools-${{ matrix.package }} From b3b9ffd7e5e74c2cc91cbf92dfa220e9b7af60e1 Mon Sep 17 00:00:00 2001 From: Alexander Goncharenko Date: Tue, 28 Jan 2025 13:43:18 +0300 Subject: [PATCH 79/79] fix --- .github/workflows/build-docker-image.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/build-docker-image.yml b/.github/workflows/build-docker-image.yml index 332ff42..21a7139 100644 --- a/.github/workflows/build-docker-image.yml +++ b/.github/workflows/build-docker-image.yml @@ -11,6 +11,9 @@ on: jobs: build: runs-on: ubuntu-latest + permissions: + id-token: write + contents: read container: neuralegion/devops strategy: