From bdc689faa7033f7ba98ee450bbda45c5520abb68 Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Mon, 2 Jan 2023 23:20:23 +0000 Subject: [PATCH 01/15] Initial VNC support --- .github/workflows/build_container_images.yml | 82 +++++++++++++++---- .github/workflows/build_test_images.yml | 24 +++++- Dockerfile | 48 +++++++++++ conf.d/tachidesk.conf | 6 ++ conf.d/websockify.conf | 3 + conf.d/x11vnc.conf | 3 + conf.d/xvfb.conf | 3 + scripts/dockerfiles/Git_Actions-Dockerfile | 57 ++++++++++--- .../dockerfiles/Test_Git_Actions-Dockerfile | 54 +++++++++--- scripts/startup_script.sh | 31 ++++++- scripts/startup_script_alpine.sh | 22 +++++ supervisord.conf | 5 ++ 12 files changed, 295 insertions(+), 43 deletions(-) create mode 100644 conf.d/tachidesk.conf create mode 100644 conf.d/websockify.conf create mode 100644 conf.d/x11vnc.conf create mode 100644 conf.d/xvfb.conf create mode 100644 scripts/startup_script_alpine.sh create mode 100644 supervisord.conf diff --git a/.github/workflows/build_container_images.yml b/.github/workflows/build_container_images.yml index 0e231ee..cd08b87 100644 --- a/.github/workflows/build_container_images.yml +++ b/.github/workflows/build_container_images.yml @@ -30,6 +30,12 @@ env: build_base_image_alpine_platform: 'linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x' build_base_image_alpine_platform_testing: 'linux/amd64' startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/scripts/startup_script.sh' + startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/main/scripts/startup_script_alpine.sh' + supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/supervisord.conf' + supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/tachidesk.conf' + supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/websockify.conf' + supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/x11vnc.conf' + supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/xvfb.conf' tachidesk_webui_stable_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server/releases/latest' tachidesk_webui_preview_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server-preview/releases/latest' @@ -197,14 +203,20 @@ jobs: build-args: | BASE_IMAGE=${{ env.build_base_image_temurin }} BUILD_DATE=${{ steps.get_latest_release_metadata.outputs.build_date }} + PLATFORM=ubuntu IMAGE_VERSION=${{ steps.get_latest_release_metadata.outputs.release_version }} - IMAGE_TYPE=stable-ubuntu + IMAGE_TYPE=stable TACHIDESK_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.release_commit }} TACHIDESK_RELEASE_TAG=${{ steps.get_latest_release_metadata.outputs.release_tag }} TACHIDESK_RELEASE_DOWNLOAD_URL=${{ steps.get_latest_release_metadata.outputs.release_url }} TACHIDESK_FILENAME=${{ steps.get_latest_release_metadata.outputs.release_filename }} STARTUP_SCRIPT_URL=${{ env.startup_script_url }} TACHIDESK_DOCKER_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.tachidesk_docker_git_commit }} + SUPERVISORD_URL=${{ env.supervisord_url }} + SUPERVISORD_TACHIDESK_URL=${{ env.supervisord_tachidesk_conf_url }} + SUPERVISORD_WEBSOCKIFY_URL=${{ env.supervisord_websockify_conf_url }} + SUPERVISORD_X11VNC_URL=${{ env.supervisord_x11vnc_conf_url }} + SUPERVISORD_XVFB_URL=${{ env.supervisord_xvfb_conf_url }} tags: | test-image:stable outputs: type=docker,dest=/tmp/test_image_stable.tar @@ -246,14 +258,20 @@ jobs: build-args: | BASE_IMAGE=${{ env.build_base_image_alpine }} BUILD_DATE=${{ steps.get_latest_release_metadata.outputs.build_date }} + PLATFORM=alpine IMAGE_VERSION=${{ steps.get_latest_release_metadata.outputs.release_version }} - IMAGE_TYPE=stable-alpine + IMAGE_TYPE=stable TACHIDESK_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.release_commit }} TACHIDESK_RELEASE_TAG=${{ steps.get_latest_release_metadata.outputs.release_tag }} TACHIDESK_RELEASE_DOWNLOAD_URL=${{ steps.get_latest_release_metadata.outputs.release_url }} TACHIDESK_FILENAME=${{ steps.get_latest_release_metadata.outputs.release_filename }} - STARTUP_SCRIPT_URL=${{ env.startup_script_url }} + STARTUP_SCRIPT_URL=${{ env.startup_script_url_alpine }} TACHIDESK_DOCKER_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.tachidesk_docker_git_commit }} + SUPERVISORD_URL=${{ env.supervisord_url }} + SUPERVISORD_TACHIDESK_URL=${{ env.supervisord_tachidesk_conf_url }} + SUPERVISORD_WEBSOCKIFY_URL=${{ env.supervisord_websockify_conf_url }} + SUPERVISORD_X11VNC_URL=${{ env.supervisord_x11vnc_conf_url }} + SUPERVISORD_XVFB_URL=${{ env.supervisord_xvfb_conf_url }} tags: | test-image:stable-alpine outputs: type=docker,dest=/tmp/test_image_stable_alpine.tar @@ -331,8 +349,9 @@ jobs: build-args: | BASE_IMAGE=${{ env.build_base_image_temurin }} BUILD_DATE=${{ needs.check_stable.outputs.build_date }} + PLATFORM=ubuntu IMAGE_VERSION=${{ needs.check_stable.outputs.release_version }} - IMAGE_TYPE=stable-ubuntu + IMAGE_TYPE=stable TACHIDESK_GIT_COMMIT=${{ needs.check_stable.outputs.release_commit }} TACHIDESK_RELEASE_TAG=${{ needs.check_stable.outputs.release_tag }} TACHIDESK_RELEASE_DOWNLOAD_URL=${{ needs.check_stable.outputs.release_url }} @@ -340,6 +359,11 @@ jobs: STARTUP_SCRIPT_URL=${{ env.startup_script_url }} TACHIDESK_DOCKER_GIT_COMMIT=${{ needs.check_stable.outputs.tachidesk_docker_git_commit }} IMAGE_OWNER=${{ needs.check_stable.outputs.repository_owner_lower }} + SUPERVISORD_URL=${{ env.supervisord_url }} + SUPERVISORD_TACHIDESK_URL=${{ env.supervisord_tachidesk_conf_url }} + SUPERVISORD_WEBSOCKIFY_URL=${{ env.supervisord_websockify_conf_url }} + SUPERVISORD_X11VNC_URL=${{ env.supervisord_x11vnc_conf_url }} + SUPERVISORD_XVFB_URL=${{ env.supervisord_xvfb_conf_url }} tags: | ghcr.io/${{ needs.check_stable.outputs.repository_owner_lower }}/${{ env.build_repo_docker }}:latest ghcr.io/${{ needs.check_stable.outputs.repository_owner_lower }}/${{ env.build_repo_docker }}:stable @@ -360,15 +384,21 @@ jobs: build-args: | BASE_IMAGE=${{ env.build_base_image_alpine }} BUILD_DATE=${{ needs.check_stable.outputs.build_date }} + PLATFORM=alpine IMAGE_VERSION=${{ needs.check_stable.outputs.release_version }} - IMAGE_TYPE=stable-alpine + IMAGE_TYPE=stable TACHIDESK_GIT_COMMIT=${{ needs.check_stable.outputs.release_commit }} TACHIDESK_RELEASE_TAG=${{ needs.check_stable.outputs.release_tag }} TACHIDESK_RELEASE_DOWNLOAD_URL=${{ needs.check_stable.outputs.release_url }} TACHIDESK_FILENAME=${{ needs.check_stable.outputs.release_filename }} - STARTUP_SCRIPT_URL=${{ env.startup_script_url }} + STARTUP_SCRIPT_URL=${{ env.startup_script_url_alpine }} TACHIDESK_DOCKER_GIT_COMMIT=${{ needs.check_stable.outputs.tachidesk_docker_git_commit }} IMAGE_OWNER=${{ needs.check_stable.outputs.repository_owner_lower }} + SUPERVISORD_URL=${{ env.supervisord_url }} + SUPERVISORD_TACHIDESK_URL=${{ env.supervisord_tachidesk_conf_url }} + SUPERVISORD_WEBSOCKIFY_URL=${{ env.supervisord_websockify_conf_url }} + SUPERVISORD_X11VNC_URL=${{ env.supervisord_x11vnc_conf_url }} + SUPERVISORD_XVFB_URL=${{ env.supervisord_xvfb_conf_url }} tags: | ghcr.io/${{ needs.check_stable.outputs.repository_owner_lower }}/${{ env.build_repo_docker }}:latest-alpine ghcr.io/${{ needs.check_stable.outputs.repository_owner_lower }}/${{ env.build_repo_docker }}:stable-alpine @@ -464,14 +494,20 @@ jobs: build-args: | BASE_IMAGE=${{ env.build_base_image_temurin }} BUILD_DATE=${{ steps.get_latest_release_metadata.outputs.build_date }} + PLATFORM=ubuntu IMAGE_VERSION=${{ steps.get_latest_release_metadata.outputs.release_version }} - IMAGE_TYPE=preview-ubuntu + IMAGE_TYPE=preview TACHIDESK_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.release_commit }} TACHIDESK_RELEASE_TAG=${{ steps.get_latest_release_metadata.outputs.release_tag }} TACHIDESK_RELEASE_DOWNLOAD_URL=${{ steps.get_latest_release_metadata.outputs.release_url }} TACHIDESK_FILENAME=${{ steps.get_latest_release_metadata.outputs.release_filename }} STARTUP_SCRIPT_URL=${{ env.startup_script_url }} TACHIDESK_DOCKER_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.tachidesk_docker_git_commit }} + SUPERVISORD_URL=${{ env.supervisord_url }} + SUPERVISORD_TACHIDESK_URL=${{ env.supervisord_tachidesk_conf_url }} + SUPERVISORD_WEBSOCKIFY_URL=${{ env.supervisord_websockify_conf_url }} + SUPERVISORD_X11VNC_URL=${{ env.supervisord_x11vnc_conf_url }} + SUPERVISORD_XVFB_URL=${{ env.supervisord_xvfb_conf_url }} tags: | test-image:preview outputs: type=docker,dest=/tmp/test_image_preview.tar @@ -515,14 +551,20 @@ jobs: build-args: | BASE_IMAGE=${{ env.build_base_image_alpine }} BUILD_DATE=${{ steps.get_latest_release_metadata.outputs.build_date }} + PLATFORM=alpine IMAGE_VERSION=${{ steps.get_latest_release_metadata.outputs.release_version }} - IMAGE_TYPE=preview-alpine + IMAGE_TYPE=preview TACHIDESK_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.release_commit }} TACHIDESK_RELEASE_TAG=${{ steps.get_latest_release_metadata.outputs.release_tag }} TACHIDESK_RELEASE_DOWNLOAD_URL=${{ steps.get_latest_release_metadata.outputs.release_url }} TACHIDESK_FILENAME=${{ steps.get_latest_release_metadata.outputs.release_filename }} - STARTUP_SCRIPT_URL=${{ env.startup_script_url }} + STARTUP_SCRIPT_URL=${{ env.startup_script_url_alpine }} TACHIDESK_DOCKER_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.tachidesk_docker_git_commit }} + SUPERVISORD_URL=${{ env.supervisord_url }} + SUPERVISORD_TACHIDESK_URL=${{ env.supervisord_tachidesk_conf_url }} + SUPERVISORD_WEBSOCKIFY_URL=${{ env.supervisord_websockify_conf_url }} + SUPERVISORD_X11VNC_URL=${{ env.supervisord_x11vnc_conf_url }} + SUPERVISORD_XVFB_URL=${{ env.supervisord_xvfb_conf_url }} tags: | test-image:preview-alpine outputs: type=docker,dest=/tmp/test_image_preview_alpine.tar @@ -602,15 +644,21 @@ jobs: build-args: | BASE_IMAGE=${{ env.build_base_image_temurin }} BUILD_DATE=${{ needs.check_preview.outputs.build_date }} + PLATFORM=ubuntu IMAGE_VERSION=${{ needs.check_preview.outputs.release_version }} - IMAGE_TYPE=preview-ubuntu + IMAGE_TYPE=preview TACHIDESK_GIT_COMMIT=${{ needs.check_preview.outputs.release_commit }} TACHIDESK_RELEASE_TAG=${{ needs.check_preview.outputs.release_tag }} TACHIDESK_RELEASE_DOWNLOAD_URL=${{ needs.check_preview.outputs.release_url }} TACHIDESK_FILENAME=${{ needs.check_preview.outputs.release_filename }} STARTUP_SCRIPT_URL=${{ env.startup_script_url }} TACHIDESK_DOCKER_GIT_COMMIT=${{ needs.check_preview.outputs.tachidesk_docker_git_commit }} - IMAGE_OWNER=${{ needs.check_preview.outputs.repository_owner_lower }} + IMAGE_OWNER=${{ needs.check_preview.outputs.repository_owner_lower }} + SUPERVISORD_URL=${{ env.supervisord_url }} + SUPERVISORD_TACHIDESK_URL=${{ env.supervisord_tachidesk_conf_url }} + SUPERVISORD_WEBSOCKIFY_URL=${{ env.supervisord_websockify_conf_url }} + SUPERVISORD_X11VNC_URL=${{ env.supervisord_x11vnc_conf_url }} + SUPERVISORD_XVFB_URL=${{ env.supervisord_xvfb_conf_url }} tags: | ghcr.io/${{ needs.check_preview.outputs.repository_owner_lower }}/${{ env.build_repo_docker }}:preview ghcr.io/${{ needs.check_preview.outputs.repository_owner_lower }}/${{ env.build_repo_docker }}:preview-ubuntu @@ -627,15 +675,21 @@ jobs: build-args: | BASE_IMAGE=${{ env.build_base_image_alpine }} BUILD_DATE=${{ needs.check_preview.outputs.build_date }} + PLATFORM=alpine IMAGE_VERSION=${{ needs.check_preview.outputs.release_version }} - IMAGE_TYPE=preview-alpine + IMAGE_TYPE=preview TACHIDESK_GIT_COMMIT=${{ needs.check_preview.outputs.release_commit }} TACHIDESK_RELEASE_TAG=${{ needs.check_preview.outputs.release_tag }} TACHIDESK_RELEASE_DOWNLOAD_URL=${{ needs.check_preview.outputs.release_url }} TACHIDESK_FILENAME=${{ needs.check_preview.outputs.release_filename }} - STARTUP_SCRIPT_URL=${{ env.startup_script_url }} + STARTUP_SCRIPT_URL=${{ env.startup_script_url_alpine }} TACHIDESK_DOCKER_GIT_COMMIT=${{ needs.check_preview.outputs.tachidesk_docker_git_commit }} - IMAGE_OWNER=${{ needs.check_preview.outputs.repository_owner_lower }} + IMAGE_OWNER=${{ needs.check_preview.outputs.repository_owner_lower }} + SUPERVISORD_URL=${{ env.supervisord_url }} + SUPERVISORD_TACHIDESK_URL=${{ env.supervisord_tachidesk_conf_url }} + SUPERVISORD_WEBSOCKIFY_URL=${{ env.supervisord_websockify_conf_url }} + SUPERVISORD_X11VNC_URL=${{ env.supervisord_x11vnc_conf_url }} + SUPERVISORD_XVFB_URL=${{ env.supervisord_xvfb_conf_url }} tags: | ghcr.io/${{ needs.check_preview.outputs.repository_owner_lower }}/${{ env.build_repo_docker }}:preview-alpine cache-from: type=local,src=/tmp/.buildx-cache diff --git a/.github/workflows/build_test_images.yml b/.github/workflows/build_test_images.yml index bce8929..b69b2de 100644 --- a/.github/workflows/build_test_images.yml +++ b/.github/workflows/build_test_images.yml @@ -22,7 +22,13 @@ env: build_base_image_alpine: 'alpine:3.16' build_base_image_alpine_platform: 'linux/amd64' startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/scripts/startup_script.sh' + startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/main/scripts/startup_script_alpine.sh' tachidesk_webui_stable_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server/releases/latest' + supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/supervisord.conf' + supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/tachidesk.conf' + supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/websockify.conf' + supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/x11vnc.conf' + supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/xvfb.conf' jobs: @@ -83,8 +89,9 @@ jobs: build-args: | BASE_IMAGE=${{ env.build_base_image_temurin }} BUILD_DATE=${{ steps.get_latest_release_metadata.outputs.build_date }} + PLATFORM=ubuntu IMAGE_VERSION=${{ steps.get_latest_release_metadata.outputs.release_version }} - IMAGE_TYPE=develop-ubuntu + IMAGE_TYPE=develop TACHIDESK_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.release_commit }} TACHIDESK_RELEASE_TAG=${{ steps.get_latest_release_metadata.outputs.release_tag }} TACHIDESK_RELEASE_DOWNLOAD_URL=${{ steps.get_latest_release_metadata.outputs.release_url }} @@ -92,6 +99,11 @@ jobs: STARTUP_SCRIPT_URL=${{ env.startup_script_url }} TACHIDESK_DOCKER_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.tachidesk_docker_git_commit }} IMAGE_OWNER=${{ steps.get_latest_release_metadata.outputs.repository_owner_lower }} + SUPERVISORD_URL=${{ env.supervisord_url }} + SUPERVISORD_TACHIDESK_URL=${{ env.supervisord_tachidesk_conf_url }} + SUPERVISORD_WEBSOCKIFY_URL=${{ env.supervisord_websockify_conf_url }} + SUPERVISORD_X11VNC_URL=${{ env.supervisord_x11vnc_conf_url }} + SUPERVISORD_XVFB_URL=${{ env.supervisord_xvfb_conf_url }} tags: | ghcr.io/${{ steps.get_latest_release_metadata.outputs.repository_owner_lower }}/${{ env.build_repo_docker }}:develop cache-from: type=local,src=/tmp/.buildx-cache @@ -107,15 +119,21 @@ jobs: build-args: | BASE_IMAGE=${{ env.build_base_image_alpine }} BUILD_DATE=${{ steps.get_latest_release_metadata.outputs.build_date }} + PLATFORM=alpine IMAGE_VERSION=${{ steps.get_latest_release_metadata.outputs.release_version }} - IMAGE_TYPE=develop-alpine + IMAGE_TYPE=develop TACHIDESK_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.release_commit }} TACHIDESK_RELEASE_TAG=${{ steps.get_latest_release_metadata.outputs.release_tag }} TACHIDESK_RELEASE_DOWNLOAD_URL=${{ steps.get_latest_release_metadata.outputs.release_url }} TACHIDESK_FILENAME=${{ steps.get_latest_release_metadata.outputs.release_filename }} - STARTUP_SCRIPT_URL=${{ env.startup_script_url }} + STARTUP_SCRIPT_URL=${{ env.startup_script_url_alpine }} TACHIDESK_DOCKER_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.tachidesk_docker_git_commit }} IMAGE_OWNER=${{ steps.get_latest_release_metadata.outputs.repository_owner_lower }} + SUPERVISORD_URL=${{ env.supervisord_url }} + SUPERVISORD_TACHIDESK_URL=${{ env.supervisord_tachidesk_conf_url }} + SUPERVISORD_WEBSOCKIFY_URL=${{ env.supervisord_websockify_conf_url }} + SUPERVISORD_X11VNC_URL=${{ env.supervisord_x11vnc_conf_url }} + SUPERVISORD_XVFB_URL=${{ env.supervisord_xvfb_conf_url }} tags: | ghcr.io/${{ steps.get_latest_release_metadata.outputs.repository_owner_lower }}/${{ env.build_repo_docker }}:develop-alpine cache-from: type=local,src=/tmp/.buildx-cache diff --git a/Dockerfile b/Dockerfile index bcb7b45..5559828 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,43 @@ FROM eclipse-temurin:11-jre-focal +RUN apt update && apt install -y --no-install-recommends \ + xvfb \ + xauth \ + x11vnc \ + x11-utils \ + x11-xserver-utils \ + novnc \ + supervisor \ + libglib2.0-0 \ + libnss3 \ + libnspr4 \ + libatk1.0-0 \ + libatk-bridge2.0-0 \ + libcups2 \ + libdrm2 \ + libdbus-1-3 \ + libatspi2.0-0 \ + libx11-6 \ + libxcomposite1 \ + libxdamage1 \ + libxext6 \ + libxfixes3 \ + libxrandr2 \ + libgbm1 \ + libxkbcommon0 \ + libxcb1 \ + libpango-1.0-0 \ + libcairo2 \ + libasound2 + RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; RUN mkdir -p /home/suwayomi && chown -R suwayomi:suwayomi /home/suwayomi +RUN mkdir -p /Xauthority && chown -R suwayomi:suwayomi /Xauthority + +VOLUME /Xauthority + USER suwayomi WORKDIR /home/suwayomi @@ -12,6 +46,20 @@ RUN curl -s --create-dirs -L https://raw.githubusercontent.com/suwayomi/docker-t RUN curl -L $(curl -s https://api.github.com/repos/suwayomi/tachidesk-server/releases/latest | grep -o "https.*jar") -o /home/suwayomi/startup/tachidesk_latest.jar +RUN curl -s --create-dirs -L https://raw.githubusercontent.com/suwayomi/docker-tachidesk/main/supervisord.conf -o /home/suwayomi/startup/supervisord.conf + +RUN curl -s --create-dirs -L https://raw.githubusercontent.com/suwayomi/docker-tachidesk/main/conf.d/tachidesk.conf -o /home/suwayomi/startup/conf.d/tachidesk.conf +RUN curl -s --create-dirs -L https://raw.githubusercontent.com/suwayomi/docker-tachidesk/main/conf.d/websockify.conf -o /home/suwayomi/startup/conf.d/websockify.conf +RUN curl -s --create-dirs -L https://raw.githubusercontent.com/suwayomi/docker-tachidesk/main/conf.d/x11vnc.conf -o /home/suwayomi/startup/conf.d/x11vnc.conf +RUN curl -s --create-dirs -L https://raw.githubusercontent.com/suwayomi/docker-tachidesk/main/conf.d/xvfb.conf -o /home/suwayomi/startup/conf.d/xvfb.conf + +# start x11vnc and expose its port +ENV DISPLAY :0.0 +# vnv server +EXPOSE 5900 +# novnc +EXPOSE 5800 +# Tachidesk EXPOSE 4567 CMD ["/bin/sh", "/home/suwayomi/startup/startup_script.sh"] diff --git a/conf.d/tachidesk.conf b/conf.d/tachidesk.conf new file mode 100644 index 0000000..69c8f0e --- /dev/null +++ b/conf.d/tachidesk.conf @@ -0,0 +1,6 @@ +[program:tachidesk] +command=java -jar "/home/suwayomi/startup/tachidesk_latest.jar" +autorestart=true + +stdout_logfile=%(ENV_TACHIDESK_SDOUT)s +stdout_logfile_maxbytes=0 \ No newline at end of file diff --git a/conf.d/websockify.conf b/conf.d/websockify.conf new file mode 100644 index 0000000..e0e867c --- /dev/null +++ b/conf.d/websockify.conf @@ -0,0 +1,3 @@ +[program:websockify] +command=websockify --web /usr/share/novnc 5800 localhost:5900 +autorestart=true \ No newline at end of file diff --git a/conf.d/x11vnc.conf b/conf.d/x11vnc.conf new file mode 100644 index 0000000..19993c6 --- /dev/null +++ b/conf.d/x11vnc.conf @@ -0,0 +1,3 @@ +[program:x11vnc] +command=x11vnc -forever -passwd %(ENV_VNC_PASSWORD)s -shared +autorestart=true \ No newline at end of file diff --git a/conf.d/xvfb.conf b/conf.d/xvfb.conf new file mode 100644 index 0000000..4915866 --- /dev/null +++ b/conf.d/xvfb.conf @@ -0,0 +1,3 @@ +[program:xvfb] +command=Xvfb :0 -auth ~/.Xauthority %(ENV_DPI_OPTIONS)s -screen 0 %(ENV_XFB_SCREEN)s -listen tcp -ac +autorestart=true \ No newline at end of file diff --git a/scripts/dockerfiles/Git_Actions-Dockerfile b/scripts/dockerfiles/Git_Actions-Dockerfile index 96b577c..3099e14 100644 --- a/scripts/dockerfiles/Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Git_Actions-Dockerfile @@ -1,9 +1,7 @@ ARG BASE_IMAGE=none - -FROM $BASE_IMAGE - ARG BASE_IMAGE ARG BUILD_DATE +ARG PLATFORM ARG IMAGE_VERSION ARG IMAGE_TYPE ARG TACHIDESK_GIT_COMMIT @@ -12,16 +10,21 @@ ARG TACHIDESK_FILENAME ARG TACHIDESK_RELEASE_DOWNLOAD_URL ARG TACHIDESK_DOCKER_GIT_COMMIT ARG STARTUP_SCRIPT_URL +ARG SUPERVISORD_URL +ARG SUPERVISORD_TACHIDESK_URL +ARG SUPERVISORD_WEBSOCKIFY_URL +ARG SUPERVISORD_X11VNC_URL +ARG SUPERVISORD_XVFB_URL + +FROM $BASE_IMAGE as base + +FROM base as branch-base-alpine +RUN apk --update add curl openjdk8-jre-base tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; -RUN if echo "$BASE_IMAGE" | grep -q "openjdk"; then useradd -ms /bin/sh suwayomi; \ - elif echo "$BASE_IMAGE" | grep -q "eclipse-temurin"; then \ - if echo "$BASE_IMAGE" | grep -q "alpine"; then \ - apk --update add curl tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; \ - else \ - groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; fi; \ - elif echo "$BASE_IMAGE" | grep -q "alpine"; then apk --update add curl openjdk8-jre-base tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; \ - else echo "wrong base image"; \ - fi +FROM base as branch-base-ubuntu +RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; + +FROM branch-base-${PLATFORM} AS home LABEL maintainer="suwayomi" \ org.opencontainers.image.title="Tachidesk Docker" \ @@ -34,6 +37,7 @@ LABEL maintainer="suwayomi" \ org.opencontainers.image.created=$BUILD_DATE \ org.opencontainers.image.version=$IMAGE_VERSION \ image_type=$IMAGE_TYPE \ + platform=$PLATFORM \ "tachidesk.git_commit"=$TACHIDESK_GIT_COMMIT \ "tachidesk.release_tag"=$TACHIDESK_RELEASE_TAG \ "tachidesk.filename"=$TACHIDESK_FILENAME \ @@ -41,6 +45,15 @@ LABEL maintainer="suwayomi" \ org.opencontainers.image.licenses="MPL-2.0" RUN mkdir -p /home/suwayomi && chown -R suwayomi:suwayomi /home/suwayomi + +FROM home as branch-home-alpine + +FROM home as branch-home-ubuntu +RUN mkdir -p /Xauthority && chown -R suwayomi:suwayomi /Xauthority +VOLUME /Xauthority + +FROM branch-home-${PLATFORM} AS display + USER suwayomi:suwayomi WORKDIR /home/suwayomi RUN echo $TACHIDESK_FILENAME @@ -48,5 +61,25 @@ RUN curl -s --create-dirs -L $TACHIDESK_RELEASE_DOWNLOAD_URL -o /home/suwayomi/s RUN echo $TACHIDESK_DOCKER_GIT_COMMIT RUN curl -s --create-dirs -L $STARTUP_SCRIPT_URL -o /home/suwayomi/startup/startup_script.sh +FROM display as branch-display-alpine +EXPOSE 4567 + +FROM display as branch-display-ubuntu +RUN curl -s --create-dirs -L $SUPERVISORD_URL -o /home/suwayomi/startup/supervisord.conf +RUN curl -s --create-dirs -L $SUPERVISORD_TACHIDESK_URL -o /home/suwayomi/startup/conf.d/tachidesk.conf +RUN curl -s --create-dirs -L $SUPERVISORD_WEBSOCKIFY_URL -o /home/suwayomi/startup/conf.d/websockify.conf +RUN curl -s --create-dirs -L $SUPERVISORD_X11VNC_URL -o /home/suwayomi/startup/conf.d/x11vnc.conf +RUN curl -s --create-dirs -L $SUPERVISORD_XVFB_URL -o /home/suwayomi/startup/conf.d/xvfb.conf +# start x11vnc and expose its port +ENV DISPLAY :0.0 +# vnv server +EXPOSE 5900 +# novnc +EXPOSE 5800 +# Tachidesk +EXPOSE 4567 + +FROM branch-display-${PLATFORM} AS final + EXPOSE 4567 CMD ["/bin/sh", "/home/suwayomi/startup/startup_script.sh"] diff --git a/scripts/dockerfiles/Test_Git_Actions-Dockerfile b/scripts/dockerfiles/Test_Git_Actions-Dockerfile index 85fae42..79aa149 100644 --- a/scripts/dockerfiles/Test_Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Test_Git_Actions-Dockerfile @@ -1,9 +1,7 @@ ARG BASE_IMAGE=none - -FROM $BASE_IMAGE - ARG BASE_IMAGE ARG BUILD_DATE +ARG PLATFORM ARG IMAGE_VERSION ARG IMAGE_TYPE ARG TACHIDESK_GIT_COMMIT @@ -12,16 +10,21 @@ ARG TACHIDESK_FILENAME ARG TACHIDESK_RELEASE_DOWNLOAD_URL ARG TACHIDESK_DOCKER_GIT_COMMIT ARG STARTUP_SCRIPT_URL +ARG SUPERVISORD_URL +ARG SUPERVISORD_TACHIDESK_URL +ARG SUPERVISORD_WEBSOCKIFY_URL +ARG SUPERVISORD_X11VNC_URL +ARG SUPERVISORD_XVFB_URL + +FROM $BASE_IMAGE as base -RUN if echo "$BASE_IMAGE" | grep -q "openjdk"; then useradd -ms /bin/sh suwayomi; \ - elif echo "$BASE_IMAGE" | grep -q "eclipse-temurin"; then \ - if echo "$BASE_IMAGE" | grep -q "alpine"; then \ - apk --update add curl tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; \ - else \ - groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; fi; \ - elif echo "$BASE_IMAGE" | grep -q "alpine"; then apk --update add curl openjdk8-jre-base tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; \ - else echo "wrong base image"; \ - fi +FROM base as branch-base-alpine +RUN apk --update add curl openjdk8-jre-base tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; + +FROM base as branch-base-ubuntu +RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; + +FROM branch-base-${PLATFORM} AS home LABEL maintainer="suwayomi" \ org.opencontainers.image.title="Tachidesk Docker" \ @@ -34,6 +37,7 @@ LABEL maintainer="suwayomi" \ org.opencontainers.image.created=$BUILD_DATE \ org.opencontainers.image.version=$IMAGE_VERSION \ image_type=$IMAGE_TYPE \ + platform=$PLATFORM \ "tachidesk.git_commit"=$TACHIDESK_GIT_COMMIT \ "tachidesk.release_tag"=$TACHIDESK_RELEASE_TAG \ "tachidesk.filename"=$TACHIDESK_FILENAME \ @@ -48,6 +52,14 @@ RUN USER=suwayomi && \ mkdir -p /etc/fixuid && \ printf "user: $USER\ngroup: $GROUP\n" > /etc/fixuid/config.yml +FROM home as branch-home-alpine + +FROM home as branch-home-ubuntu +RUN mkdir -p /Xauthority && chown -R suwayomi:suwayomi /Xauthority +VOLUME /Xauthority + +FROM branch-home-${PLATFORM} AS display + USER suwayomi:suwayomi WORKDIR /home/suwayomi RUN echo $TACHIDESK_FILENAME @@ -55,6 +67,24 @@ RUN curl -s --create-dirs -L $TACHIDESK_RELEASE_DOWNLOAD_URL -o /home/suwayomi/s RUN echo $TACHIDESK_DOCKER_GIT_COMMIT RUN curl -s --create-dirs -L $STARTUP_SCRIPT_URL -o /home/suwayomi/startup/startup_script.sh +FROM display as branch-display-alpine EXPOSE 4567 + +FROM display as branch-display-ubuntu +RUN curl -s --create-dirs -L $SUPERVISORD_URL -o /home/suwayomi/startup/supervisord.conf +RUN curl -s --create-dirs -L $SUPERVISORD_TACHIDESK_URL -o /home/suwayomi/startup/conf.d/tachidesk.conf +RUN curl -s --create-dirs -L $SUPERVISORD_WEBSOCKIFY_URL -o /home/suwayomi/startup/conf.d/websockify.conf +RUN curl -s --create-dirs -L $SUPERVISORD_X11VNC_URL -o /home/suwayomi/startup/conf.d/x11vnc.conf +RUN curl -s --create-dirs -L $SUPERVISORD_XVFB_URL -o /home/suwayomi/startup/conf.d/xvfb.conf +# start x11vnc and expose its port +ENV DISPLAY :0.0 +# vnv server +EXPOSE 5900 +# novnc +EXPOSE 5800 +# Tachidesk +EXPOSE 4567 + +FROM branch-display-${PLATFORM} AS final ENTRYPOINT ["fixuid"] CMD ["/bin/sh", "/home/suwayomi/startup/startup_script.sh"] diff --git a/scripts/startup_script.sh b/scripts/startup_script.sh index 235ffc1..7eb7124 100644 --- a/scripts/startup_script.sh +++ b/scripts/startup_script.sh @@ -3,6 +3,31 @@ if [ ! -f /home/suwayomi/.local/share/Tachidesk/docker_touchfile ]; then touch /home/suwayomi/.local/share/Tachidesk/docker_touchfile curl -s --create-dirs -L https://raw.githubusercontent.com/Suwayomi/docker-tachidesk/main/server.conf -o /home/suwayomi/.local/share/Tachidesk/server.conf; fi + +if [ -z "$VNC_PASSWORD" ]; then + echo >&2 'warn: No password for VNC connection set, defaulting to "password".' + echo >&2 ' Did you forget to add -e VNC_PASSWORD=... ?' + export VNC_PASSWORD='password' +fi + +if [ -z "$XFB_SCREEN" ]; then + export XFB_SCREEN=1024x768x24 +fi + +if [ ! -z "$XFB_SCREEN_DPI" ]; then + export DPI_OPTIONS="-dpi $XFB_SCREEN_DPI" +else + export DPI_OPTIONS="" +fi + +# first we need our security cookie and add it to user's .Xauthority +mcookie | sed -e 's/^/add :0 MIT-MAGIC-COOKIE-1 /' | xauth -q + +# now place the security cookie with FamilyWild on volume so client can use it +# see http://stackoverflow.com/25280523 for details on the following command +xauth nlist :0 | sed -e 's/^..../ffff/' | xauth -f /Xauthority/xserver.xauth nmerge - + + echo "" echo "" echo " ************README***********" @@ -15,8 +40,10 @@ echo "Tachidesk data location inside the container -> /home/suwayomi/.local/shar echo "" echo "The server is running by default configuration on http://localhost:4567" if [ "${LOGGING:-file}" != "file" ]; then - exec java -jar "/home/suwayomi/startup/tachidesk_latest.jar"; + export TACHIDESK_SDOUT="/dev/fd/1" else echo "log file location inside the container -> /home/suwayomi/.local/share/Tachidesk/logfile.log" - exec java -jar "/home/suwayomi/startup/tachidesk_latest.jar" > /home/suwayomi/.local/share/Tachidesk/logfile.log 2>&1; + export TACHIDESK_SDOUT="/home/suwayomi/.local/share/Tachidesk/logfile.log" fi + +exec supervisord -c /home/suwayomi/startup/supervisord.conf \ No newline at end of file diff --git a/scripts/startup_script_alpine.sh b/scripts/startup_script_alpine.sh new file mode 100644 index 0000000..235ffc1 --- /dev/null +++ b/scripts/startup_script_alpine.sh @@ -0,0 +1,22 @@ +#!/bin/sh +if [ ! -f /home/suwayomi/.local/share/Tachidesk/docker_touchfile ]; then + touch /home/suwayomi/.local/share/Tachidesk/docker_touchfile + curl -s --create-dirs -L https://raw.githubusercontent.com/Suwayomi/docker-tachidesk/main/server.conf -o /home/suwayomi/.local/share/Tachidesk/server.conf; +fi +echo "" +echo "" +echo " ************README***********" +echo "-> It is essential that u read readme for ghcr.io/suwayomi/tachidesk before running this container" +echo "-> Readme for ghcr.io/suwayomi/tachidesk is available at https://github.com/suwayomi/docker-tachidesk " +echo " *****************************" +echo "" +echo "" +echo "Tachidesk data location inside the container -> /home/suwayomi/.local/share/Tachidesk" +echo "" +echo "The server is running by default configuration on http://localhost:4567" +if [ "${LOGGING:-file}" != "file" ]; then + exec java -jar "/home/suwayomi/startup/tachidesk_latest.jar"; +else + echo "log file location inside the container -> /home/suwayomi/.local/share/Tachidesk/logfile.log" + exec java -jar "/home/suwayomi/startup/tachidesk_latest.jar" > /home/suwayomi/.local/share/Tachidesk/logfile.log 2>&1; +fi diff --git a/supervisord.conf b/supervisord.conf new file mode 100644 index 0000000..2a54b5a --- /dev/null +++ b/supervisord.conf @@ -0,0 +1,5 @@ +[supervisord] +nodaemon=true + +[include] +files = /home/suwayomi/startup/conf.d/*.conf \ No newline at end of file From 2fed9c1604f493dd94f267ba5bda43a27aa3ee6a Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Mon, 2 Jan 2023 18:54:08 -0500 Subject: [PATCH 02/15] Fix 4567 port expose dupe --- scripts/dockerfiles/Git_Actions-Dockerfile | 1 - 1 file changed, 1 deletion(-) diff --git a/scripts/dockerfiles/Git_Actions-Dockerfile b/scripts/dockerfiles/Git_Actions-Dockerfile index 3099e14..292e99b 100644 --- a/scripts/dockerfiles/Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Git_Actions-Dockerfile @@ -81,5 +81,4 @@ EXPOSE 4567 FROM branch-display-${PLATFORM} AS final -EXPOSE 4567 CMD ["/bin/sh", "/home/suwayomi/startup/startup_script.sh"] From f6db605564399afe040390c1d99f0fca97d3ad0c Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 3 Jan 2023 00:39:53 +0000 Subject: [PATCH 03/15] Move things around --- scripts/dockerfiles/Git_Actions-Dockerfile | 5 +++-- scripts/dockerfiles/Test_Git_Actions-Dockerfile | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/scripts/dockerfiles/Git_Actions-Dockerfile b/scripts/dockerfiles/Git_Actions-Dockerfile index 3099e14..8e60052 100644 --- a/scripts/dockerfiles/Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Git_Actions-Dockerfile @@ -1,4 +1,7 @@ ARG BASE_IMAGE=none + +FROM $BASE_IMAGE as base + ARG BASE_IMAGE ARG BUILD_DATE ARG PLATFORM @@ -16,8 +19,6 @@ ARG SUPERVISORD_WEBSOCKIFY_URL ARG SUPERVISORD_X11VNC_URL ARG SUPERVISORD_XVFB_URL -FROM $BASE_IMAGE as base - FROM base as branch-base-alpine RUN apk --update add curl openjdk8-jre-base tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; diff --git a/scripts/dockerfiles/Test_Git_Actions-Dockerfile b/scripts/dockerfiles/Test_Git_Actions-Dockerfile index 79aa149..8ab054e 100644 --- a/scripts/dockerfiles/Test_Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Test_Git_Actions-Dockerfile @@ -1,4 +1,7 @@ ARG BASE_IMAGE=none + +FROM $BASE_IMAGE as base + ARG BASE_IMAGE ARG BUILD_DATE ARG PLATFORM @@ -16,8 +19,6 @@ ARG SUPERVISORD_WEBSOCKIFY_URL ARG SUPERVISORD_X11VNC_URL ARG SUPERVISORD_XVFB_URL -FROM $BASE_IMAGE as base - FROM base as branch-base-alpine RUN apk --update add curl openjdk8-jre-base tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; From c5798ad4bf4e81fd323598e0c2ccb185dba8e831 Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 3 Jan 2023 01:04:10 +0000 Subject: [PATCH 04/15] Test --- scripts/dockerfiles/Git_Actions-Dockerfile | 2 ++ scripts/dockerfiles/Test_Git_Actions-Dockerfile | 2 ++ 2 files changed, 4 insertions(+) diff --git a/scripts/dockerfiles/Git_Actions-Dockerfile b/scripts/dockerfiles/Git_Actions-Dockerfile index b940993..6bc84e1 100644 --- a/scripts/dockerfiles/Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Git_Actions-Dockerfile @@ -26,6 +26,7 @@ FROM base as branch-base-ubuntu RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; FROM branch-base-${PLATFORM} AS home +ARG PLATFORM LABEL maintainer="suwayomi" \ org.opencontainers.image.title="Tachidesk Docker" \ @@ -54,6 +55,7 @@ RUN mkdir -p /Xauthority && chown -R suwayomi:suwayomi /Xauthority VOLUME /Xauthority FROM branch-home-${PLATFORM} AS display +ARG PLATFORM USER suwayomi:suwayomi WORKDIR /home/suwayomi diff --git a/scripts/dockerfiles/Test_Git_Actions-Dockerfile b/scripts/dockerfiles/Test_Git_Actions-Dockerfile index 8ab054e..9d5b5eb 100644 --- a/scripts/dockerfiles/Test_Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Test_Git_Actions-Dockerfile @@ -26,6 +26,7 @@ FROM base as branch-base-ubuntu RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; FROM branch-base-${PLATFORM} AS home +ARG PLATFORM LABEL maintainer="suwayomi" \ org.opencontainers.image.title="Tachidesk Docker" \ @@ -60,6 +61,7 @@ RUN mkdir -p /Xauthority && chown -R suwayomi:suwayomi /Xauthority VOLUME /Xauthority FROM branch-home-${PLATFORM} AS display +ARG PLATFORM USER suwayomi:suwayomi WORKDIR /home/suwayomi From 23427e143f6a90482c62ed73482ce431ea059d81 Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 3 Jan 2023 17:16:05 +0000 Subject: [PATCH 05/15] Revert "Test" This reverts commit c5798ad4bf4e81fd323598e0c2ccb185dba8e831. --- scripts/dockerfiles/Git_Actions-Dockerfile | 2 -- scripts/dockerfiles/Test_Git_Actions-Dockerfile | 2 -- 2 files changed, 4 deletions(-) diff --git a/scripts/dockerfiles/Git_Actions-Dockerfile b/scripts/dockerfiles/Git_Actions-Dockerfile index 6bc84e1..b940993 100644 --- a/scripts/dockerfiles/Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Git_Actions-Dockerfile @@ -26,7 +26,6 @@ FROM base as branch-base-ubuntu RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; FROM branch-base-${PLATFORM} AS home -ARG PLATFORM LABEL maintainer="suwayomi" \ org.opencontainers.image.title="Tachidesk Docker" \ @@ -55,7 +54,6 @@ RUN mkdir -p /Xauthority && chown -R suwayomi:suwayomi /Xauthority VOLUME /Xauthority FROM branch-home-${PLATFORM} AS display -ARG PLATFORM USER suwayomi:suwayomi WORKDIR /home/suwayomi diff --git a/scripts/dockerfiles/Test_Git_Actions-Dockerfile b/scripts/dockerfiles/Test_Git_Actions-Dockerfile index 9d5b5eb..8ab054e 100644 --- a/scripts/dockerfiles/Test_Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Test_Git_Actions-Dockerfile @@ -26,7 +26,6 @@ FROM base as branch-base-ubuntu RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; FROM branch-base-${PLATFORM} AS home -ARG PLATFORM LABEL maintainer="suwayomi" \ org.opencontainers.image.title="Tachidesk Docker" \ @@ -61,7 +60,6 @@ RUN mkdir -p /Xauthority && chown -R suwayomi:suwayomi /Xauthority VOLUME /Xauthority FROM branch-home-${PLATFORM} AS display -ARG PLATFORM USER suwayomi:suwayomi WORKDIR /home/suwayomi From 04301b52ff9a6777062d0146a66ff9528f4b7453 Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 3 Jan 2023 17:48:44 +0000 Subject: [PATCH 06/15] Don't use a password for VNC by default --- conf.d/x11vnc.conf | 2 +- scripts/startup_script.sh | 7 ++++--- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/conf.d/x11vnc.conf b/conf.d/x11vnc.conf index 19993c6..9c48b87 100644 --- a/conf.d/x11vnc.conf +++ b/conf.d/x11vnc.conf @@ -1,3 +1,3 @@ [program:x11vnc] -command=x11vnc -forever -passwd %(ENV_VNC_PASSWORD)s -shared +command=x11vnc -forever %(ENV_LAUNCH_VNC_CMD)s -shared autorestart=true \ No newline at end of file diff --git a/scripts/startup_script.sh b/scripts/startup_script.sh index 7eb7124..2f15864 100644 --- a/scripts/startup_script.sh +++ b/scripts/startup_script.sh @@ -5,9 +5,10 @@ if [ ! -f /home/suwayomi/.local/share/Tachidesk/docker_touchfile ]; then fi if [ -z "$VNC_PASSWORD" ]; then - echo >&2 'warn: No password for VNC connection set, defaulting to "password".' - echo >&2 ' Did you forget to add -e VNC_PASSWORD=... ?' - export VNC_PASSWORD='password' + echo >&2 'warn: VNC_PASSWORD for VNC connection is not set.' + export LAUNCH_VNC_CMD='' +else + export LAUNCH_VNC_CMD="-passwd $VNC_PASSWORD" fi if [ -z "$XFB_SCREEN" ]; then From 129cf0c4c66aef51a4d573c8e1abb7ab64f6c6bc Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 10 Jan 2023 22:39:29 +0000 Subject: [PATCH 07/15] Branch env --- .github/workflows/build_container_images.yml | 15 ++++++++------- .github/workflows/build_test_images.yml | 15 ++++++++------- 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build_container_images.yml b/.github/workflows/build_container_images.yml index cd08b87..4c2fca6 100644 --- a/.github/workflows/build_container_images.yml +++ b/.github/workflows/build_container_images.yml @@ -22,6 +22,7 @@ on: description: 'Force Publish Images Manually' env: + branch: ${{ github.head_ref || github.ref_name }} build_repo_docker: 'tachidesk' build_base_image_temurin: 'eclipse-temurin:11-jre-jammy' build_base_image_temurin_platform: 'linux/amd64,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x' @@ -29,13 +30,13 @@ env: build_base_image_alpine: 'alpine:3.16' build_base_image_alpine_platform: 'linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x' build_base_image_alpine_platform_testing: 'linux/amd64' - startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/scripts/startup_script.sh' - startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/main/scripts/startup_script_alpine.sh' - supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/supervisord.conf' - supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/tachidesk.conf' - supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/websockify.conf' - supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/x11vnc.conf' - supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/xvfb.conf' + startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/scripts/startup_script.sh' + startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/scripts/startup_script_alpine.sh' + supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/supervisord.conf' + supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/tachidesk.conf' + supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/websockify.conf' + supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/x11vnc.conf' + supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/xvfb.conf' tachidesk_webui_stable_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server/releases/latest' tachidesk_webui_preview_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server-preview/releases/latest' diff --git a/.github/workflows/build_test_images.yml b/.github/workflows/build_test_images.yml index b69b2de..5188851 100644 --- a/.github/workflows/build_test_images.yml +++ b/.github/workflows/build_test_images.yml @@ -16,19 +16,20 @@ on: env: + branch: ${{ github.head_ref || github.ref_name }} build_repo_docker: 'tachidesk' build_base_image_temurin: 'eclipse-temurin:11-jre-jammy' build_base_image_temurin_platform: 'linux/amd64' build_base_image_alpine: 'alpine:3.16' build_base_image_alpine_platform: 'linux/amd64' - startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/scripts/startup_script.sh' - startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/main/scripts/startup_script_alpine.sh' + startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/scripts/startup_script.sh' + startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/scripts/startup_script_alpine.sh' tachidesk_webui_stable_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server/releases/latest' - supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/supervisord.conf' - supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/tachidesk.conf' - supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/websockify.conf' - supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/x11vnc.conf' - supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/main/conf.d/xvfb.conf' + supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/supervisord.conf' + supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/tachidesk.conf' + supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/websockify.conf' + supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/x11vnc.conf' + supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/xvfb.conf' jobs: From 8d4ddf122a1af05333866784ee1317774c8ec70a Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 10 Jan 2023 22:41:37 +0000 Subject: [PATCH 08/15] Forgot env --- .github/workflows/build_container_images.yml | 14 +++++++------- .github/workflows/build_test_images.yml | 14 +++++++------- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/.github/workflows/build_container_images.yml b/.github/workflows/build_container_images.yml index 4c2fca6..04d07b8 100644 --- a/.github/workflows/build_container_images.yml +++ b/.github/workflows/build_container_images.yml @@ -30,13 +30,13 @@ env: build_base_image_alpine: 'alpine:3.16' build_base_image_alpine_platform: 'linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x' build_base_image_alpine_platform_testing: 'linux/amd64' - startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/scripts/startup_script.sh' - startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/scripts/startup_script_alpine.sh' - supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/supervisord.conf' - supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/tachidesk.conf' - supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/websockify.conf' - supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/x11vnc.conf' - supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/xvfb.conf' + startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/scripts/startup_script.sh' + startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/scripts/startup_script_alpine.sh' + supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/supervisord.conf' + supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/tachidesk.conf' + supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/websockify.conf' + supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/x11vnc.conf' + supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/xvfb.conf' tachidesk_webui_stable_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server/releases/latest' tachidesk_webui_preview_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server-preview/releases/latest' diff --git a/.github/workflows/build_test_images.yml b/.github/workflows/build_test_images.yml index 5188851..55ca07c 100644 --- a/.github/workflows/build_test_images.yml +++ b/.github/workflows/build_test_images.yml @@ -22,14 +22,14 @@ env: build_base_image_temurin_platform: 'linux/amd64' build_base_image_alpine: 'alpine:3.16' build_base_image_alpine_platform: 'linux/amd64' - startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/scripts/startup_script.sh' - startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/scripts/startup_script_alpine.sh' + startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/scripts/startup_script.sh' + startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/scripts/startup_script_alpine.sh' tachidesk_webui_stable_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server/releases/latest' - supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/supervisord.conf' - supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/tachidesk.conf' - supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/websockify.conf' - supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/x11vnc.conf' - supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ branch }}/conf.d/xvfb.conf' + supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/supervisord.conf' + supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/tachidesk.conf' + supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/websockify.conf' + supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/x11vnc.conf' + supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/xvfb.conf' jobs: From d867e3e0a220f34e1a946cd12e929d89b22ae9b7 Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 10 Jan 2023 22:43:27 +0000 Subject: [PATCH 09/15] Manual branch --- .github/workflows/build_container_images.yml | 15 +++++++-------- .github/workflows/build_test_images.yml | 15 +++++++-------- 2 files changed, 14 insertions(+), 16 deletions(-) diff --git a/.github/workflows/build_container_images.yml b/.github/workflows/build_container_images.yml index 04d07b8..cf759c2 100644 --- a/.github/workflows/build_container_images.yml +++ b/.github/workflows/build_container_images.yml @@ -22,7 +22,6 @@ on: description: 'Force Publish Images Manually' env: - branch: ${{ github.head_ref || github.ref_name }} build_repo_docker: 'tachidesk' build_base_image_temurin: 'eclipse-temurin:11-jre-jammy' build_base_image_temurin_platform: 'linux/amd64,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x' @@ -30,13 +29,13 @@ env: build_base_image_alpine: 'alpine:3.16' build_base_image_alpine_platform: 'linux/386,linux/amd64,linux/arm/v6,linux/arm/v7,linux/arm64/v8,linux/ppc64le,linux/s390x' build_base_image_alpine_platform_testing: 'linux/amd64' - startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/scripts/startup_script.sh' - startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/scripts/startup_script_alpine.sh' - supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/supervisord.conf' - supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/tachidesk.conf' - supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/websockify.conf' - supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/x11vnc.conf' - supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/xvfb.conf' + startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/scripts/startup_script.sh' + startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/scripts/startup_script_alpine.sh' + supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/supervisord.conf' + supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/conf.d/tachidesk.conf' + supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/conf.d/websockify.conf' + supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/conf.d/x11vnc.conf' + supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/conf.d/xvfb.conf' tachidesk_webui_stable_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server/releases/latest' tachidesk_webui_preview_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server-preview/releases/latest' diff --git a/.github/workflows/build_test_images.yml b/.github/workflows/build_test_images.yml index 55ca07c..19cb2a0 100644 --- a/.github/workflows/build_test_images.yml +++ b/.github/workflows/build_test_images.yml @@ -16,20 +16,19 @@ on: env: - branch: ${{ github.head_ref || github.ref_name }} build_repo_docker: 'tachidesk' build_base_image_temurin: 'eclipse-temurin:11-jre-jammy' build_base_image_temurin_platform: 'linux/amd64' build_base_image_alpine: 'alpine:3.16' build_base_image_alpine_platform: 'linux/amd64' - startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/scripts/startup_script.sh' - startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/scripts/startup_script_alpine.sh' + startup_script_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/scripts/startup_script.sh' + startup_script_url_alpine: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/scripts/startup_script_alpine.sh' tachidesk_webui_stable_url: 'https://api.github.com/repos/suwayomi/Tachidesk-Server/releases/latest' - supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/supervisord.conf' - supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/tachidesk.conf' - supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/websockify.conf' - supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/x11vnc.conf' - supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ env.branch }}/conf.d/xvfb.conf' + supervisord_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/supervisord.conf' + supervisord_tachidesk_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/conf.d/tachidesk.conf' + supervisord_websockify_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/conf.d/websockify.conf' + supervisord_x11vnc_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/conf.d/x11vnc.conf' + supervisord_xvfb_conf_url: 'https://raw.githubusercontent.com/${{ github.repository }}/${{ github.head_ref || github.ref_name }}/conf.d/xvfb.conf' jobs: From 0f3f78075f86c05125a45816033aba4c8559cbb6 Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 10 Jan 2023 22:47:25 +0000 Subject: [PATCH 10/15] Debug --- scripts/dockerfiles/Test_Git_Actions-Dockerfile | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/scripts/dockerfiles/Test_Git_Actions-Dockerfile b/scripts/dockerfiles/Test_Git_Actions-Dockerfile index 8ab054e..2bd538f 100644 --- a/scripts/dockerfiles/Test_Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Test_Git_Actions-Dockerfile @@ -19,6 +19,10 @@ ARG SUPERVISORD_WEBSOCKIFY_URL ARG SUPERVISORD_X11VNC_URL ARG SUPERVISORD_XVFB_URL +ENV platform=${PLATFORM} + +run echo "$PLATFORM" + FROM base as branch-base-alpine RUN apk --update add curl openjdk8-jre-base tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; @@ -26,6 +30,7 @@ FROM base as branch-base-ubuntu RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; FROM branch-base-${PLATFORM} AS home +run echo "$PLATFORM" LABEL maintainer="suwayomi" \ org.opencontainers.image.title="Tachidesk Docker" \ @@ -60,6 +65,7 @@ RUN mkdir -p /Xauthority && chown -R suwayomi:suwayomi /Xauthority VOLUME /Xauthority FROM branch-home-${PLATFORM} AS display +run echo "$PLATFORM" USER suwayomi:suwayomi WORKDIR /home/suwayomi From 0a0c60ad42e84d2b439032c3278ca40376861784 Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 10 Jan 2023 22:50:30 +0000 Subject: [PATCH 11/15] Revert "Debug" This reverts commit 0f3f78075f86c05125a45816033aba4c8559cbb6. --- scripts/dockerfiles/Test_Git_Actions-Dockerfile | 6 ------ 1 file changed, 6 deletions(-) diff --git a/scripts/dockerfiles/Test_Git_Actions-Dockerfile b/scripts/dockerfiles/Test_Git_Actions-Dockerfile index 2bd538f..8ab054e 100644 --- a/scripts/dockerfiles/Test_Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Test_Git_Actions-Dockerfile @@ -19,10 +19,6 @@ ARG SUPERVISORD_WEBSOCKIFY_URL ARG SUPERVISORD_X11VNC_URL ARG SUPERVISORD_XVFB_URL -ENV platform=${PLATFORM} - -run echo "$PLATFORM" - FROM base as branch-base-alpine RUN apk --update add curl openjdk8-jre-base tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; @@ -30,7 +26,6 @@ FROM base as branch-base-ubuntu RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; FROM branch-base-${PLATFORM} AS home -run echo "$PLATFORM" LABEL maintainer="suwayomi" \ org.opencontainers.image.title="Tachidesk Docker" \ @@ -65,7 +60,6 @@ RUN mkdir -p /Xauthority && chown -R suwayomi:suwayomi /Xauthority VOLUME /Xauthority FROM branch-home-${PLATFORM} AS display -run echo "$PLATFORM" USER suwayomi:suwayomi WORKDIR /home/suwayomi From 29529be4252a1784e13226f481f0dbca8777341b Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 10 Jan 2023 22:51:29 +0000 Subject: [PATCH 12/15] Try adding platform to the top --- scripts/dockerfiles/Git_Actions-Dockerfile | 1 + scripts/dockerfiles/Test_Git_Actions-Dockerfile | 1 + 2 files changed, 2 insertions(+) diff --git a/scripts/dockerfiles/Git_Actions-Dockerfile b/scripts/dockerfiles/Git_Actions-Dockerfile index b940993..52ea16f 100644 --- a/scripts/dockerfiles/Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Git_Actions-Dockerfile @@ -1,4 +1,5 @@ ARG BASE_IMAGE=none +ARG PLATFORM FROM $BASE_IMAGE as base diff --git a/scripts/dockerfiles/Test_Git_Actions-Dockerfile b/scripts/dockerfiles/Test_Git_Actions-Dockerfile index 8ab054e..95a14a0 100644 --- a/scripts/dockerfiles/Test_Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Test_Git_Actions-Dockerfile @@ -1,4 +1,5 @@ ARG BASE_IMAGE=none +ARG PLATFORM FROM $BASE_IMAGE as base From d74953f050089a56bb80956a8743dca7ccc6cc4c Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Tue, 10 Jan 2023 23:03:49 +0000 Subject: [PATCH 13/15] Debug --- .github/workflows/build_container_images.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build_container_images.yml b/.github/workflows/build_container_images.yml index cf759c2..0c6dfd3 100644 --- a/.github/workflows/build_container_images.yml +++ b/.github/workflows/build_container_images.yml @@ -229,6 +229,7 @@ jobs: chmod -R 777 /home/runner/work/_temp/tachidesk docker run --rm -d -p 127.0.0.1:4568:4567 -v /home/runner/work/_temp/tachidesk:/home/suwayomi/.local/share/Tachidesk --name=test_image_stable test-image:stable sleep 15 + ls /home/runner/work/_temp/tachidesk/ cat /home/runner/work/_temp/tachidesk/logfile.log curl -s 127.0.0.1:4568/api/v1/settings/about/ && val=$(curl -s 127.0.0.1:4568/api/v1/settings/about/ | grep -o "Tachidesk" | sort --unique) if [[ $val == "Tachidesk" ]]; then From 48fa683394bde4f808758f7d7e8a8dde78d1dd47 Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Wed, 11 Jan 2023 00:29:52 +0000 Subject: [PATCH 14/15] Revert "Debug" This reverts commit d74953f050089a56bb80956a8743dca7ccc6cc4c. --- .github/workflows/build_container_images.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/build_container_images.yml b/.github/workflows/build_container_images.yml index 0c6dfd3..cf759c2 100644 --- a/.github/workflows/build_container_images.yml +++ b/.github/workflows/build_container_images.yml @@ -229,7 +229,6 @@ jobs: chmod -R 777 /home/runner/work/_temp/tachidesk docker run --rm -d -p 127.0.0.1:4568:4567 -v /home/runner/work/_temp/tachidesk:/home/suwayomi/.local/share/Tachidesk --name=test_image_stable test-image:stable sleep 15 - ls /home/runner/work/_temp/tachidesk/ cat /home/runner/work/_temp/tachidesk/logfile.log curl -s 127.0.0.1:4568/api/v1/settings/about/ && val=$(curl -s 127.0.0.1:4568/api/v1/settings/about/ | grep -o "Tachidesk" | sort --unique) if [[ $val == "Tachidesk" ]]; then From e8e0103408e13b97ba3a9275ed818d4634ff6781 Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Wed, 11 Jan 2023 00:32:19 +0000 Subject: [PATCH 15/15] Add dependencies --- scripts/dockerfiles/Git_Actions-Dockerfile | 30 +++++++++++++++++++ .../dockerfiles/Test_Git_Actions-Dockerfile | 30 +++++++++++++++++++ 2 files changed, 60 insertions(+) diff --git a/scripts/dockerfiles/Git_Actions-Dockerfile b/scripts/dockerfiles/Git_Actions-Dockerfile index 52ea16f..828a3c8 100644 --- a/scripts/dockerfiles/Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Git_Actions-Dockerfile @@ -24,6 +24,36 @@ FROM base as branch-base-alpine RUN apk --update add curl openjdk8-jre-base tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; FROM base as branch-base-ubuntu +RUN apt update && apt install -y --no-install-recommends \ + xvfb \ + xauth \ + x11vnc \ + x11-utils \ + x11-xserver-utils \ + novnc \ + supervisor \ + libglib2.0-0 \ + libnss3 \ + libnspr4 \ + libatk1.0-0 \ + libatk-bridge2.0-0 \ + libcups2 \ + libdrm2 \ + libdbus-1-3 \ + libatspi2.0-0 \ + libx11-6 \ + libxcomposite1 \ + libxdamage1 \ + libxext6 \ + libxfixes3 \ + libxrandr2 \ + libgbm1 \ + libxkbcommon0 \ + libxcb1 \ + libpango-1.0-0 \ + libcairo2 \ + libasound2 + RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; FROM branch-base-${PLATFORM} AS home diff --git a/scripts/dockerfiles/Test_Git_Actions-Dockerfile b/scripts/dockerfiles/Test_Git_Actions-Dockerfile index 95a14a0..fe66baf 100644 --- a/scripts/dockerfiles/Test_Git_Actions-Dockerfile +++ b/scripts/dockerfiles/Test_Git_Actions-Dockerfile @@ -24,6 +24,36 @@ FROM base as branch-base-alpine RUN apk --update add curl openjdk8-jre-base tzdata && addgroup -g 1000 -S suwayomi && adduser -u 1000 -S suwayomi -G suwayomi; FROM base as branch-base-ubuntu +RUN apt update && apt install -y --no-install-recommends \ + xvfb \ + xauth \ + x11vnc \ + x11-utils \ + x11-xserver-utils \ + novnc \ + supervisor \ + libglib2.0-0 \ + libnss3 \ + libnspr4 \ + libatk1.0-0 \ + libatk-bridge2.0-0 \ + libcups2 \ + libdrm2 \ + libdbus-1-3 \ + libatspi2.0-0 \ + libx11-6 \ + libxcomposite1 \ + libxdamage1 \ + libxext6 \ + libxfixes3 \ + libxrandr2 \ + libgbm1 \ + libxkbcommon0 \ + libxcb1 \ + libpango-1.0-0 \ + libcairo2 \ + libasound2 + RUN groupadd --gid 1000 suwayomi && useradd --uid 1000 --gid suwayomi --no-log-init suwayomi; FROM branch-base-${PLATFORM} AS home