From 67dc398b33c61f6f96c81064c986259fa5658551 Mon Sep 17 00:00:00 2001 From: Mitchell Syer Date: Sat, 15 Feb 2025 16:22:14 -0500 Subject: [PATCH] Switch to `ghcr.io/suwayomi/suwayomi-server` (#116) * Switch to `ghcr.io/suwayomi/suwayomi-server` * Fix Arch readme * Warn about missing stable release --- .github/workflows/container.yml | 23 +++++++++++++---------- README.md | 21 ++++++++++++--------- docker-compose.yml | 2 +- 3 files changed, 26 insertions(+), 20 deletions(-) diff --git a/.github/workflows/container.yml b/.github/workflows/container.yml index 47470ea..6c46a54 100644 --- a/.github/workflows/container.yml +++ b/.github/workflows/container.yml @@ -21,7 +21,7 @@ on: env: server_repo: ${{ inputs.tachidesk_release_type == 'stable' && 'Suwayomi-Server' || 'Suwayomi-Server-preview' }} - test_image_tag: ghcr.io/suwayomi/tachidesk-test:testing + test_image_tag: ghcr.io/suwayomi/suwayomi-server-test:testing this_actions_run_url: "${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}" jobs: @@ -182,9 +182,12 @@ jobs: TACHIDESK_FILENAME=${{ steps.get_latest_release_metadata.outputs.release_filename }} TACHIDESK_DOCKER_GIT_COMMIT=${{ steps.get_latest_release_metadata.outputs.tachidesk_docker_git_commit }} tags: | - ${{ inputs.tachidesk_release_type == 'stable' && 'ghcr.io/suwayomi/tachidesk:latest' || '' }} - ghcr.io/suwayomi/tachidesk:${{ inputs.tachidesk_release_type }} - ghcr.io/suwayomi/tachidesk:${{ steps.get_latest_release_metadata.outputs.release_tag }} + ${{ inputs.tachidesk_release_type == 'stable' && 'ghcr.io/suwayomi/tachidesk:latest' || '' }} #deprecated + ghcr.io/suwayomi/tachidesk:${{ inputs.tachidesk_release_type }} #deprecated + ghcr.io/suwayomi/tachidesk:${{ steps.get_latest_release_metadata.outputs.release_tag }} #deprecated + ${{ inputs.tachidesk_release_type == 'stable' && 'ghcr.io/suwayomi/suwayomi-server:latest' || '' }} + ghcr.io/suwayomi/suwayomi-server:${{ inputs.tachidesk_release_type }} + ghcr.io/suwayomi/suwayomi-server:${{ steps.get_latest_release_metadata.outputs.release_tag }} # - name: Create slim container # uses: kitabisa/docker-slim-action@v1 @@ -192,23 +195,23 @@ jobs: # DSLIM_HTTP_PROBE: false # DSLIM_PRESERVE_PATH: /opt/java/openjdk/lib,/opt/java/openjdk/conf,/home/suwayomi/.local/share/Tachidesk # with: - # target: ghcr.io/suwayomi/tachidesk:${{ inputs.tachidesk_release_type }} + # target: ghcr.io/suwayomi/suwayomi-server:${{ inputs.tachidesk_release_type }} # tag: '${{ inputs.tachidesk_release_type }}-slim' # - name: Tag slim container and push registery to repository # run: | - # docker tag ghcr.io/suwayomi/tachidesk:${{ inputs.tachidesk_release_type }}-slim ghcr.io/suwayomi/tachidesk:${{ steps.get_latest_release_metadata.outputs.release_tag }}-slim + # docker tag ghcr.io/suwayomi/suwayomi-server:${{ inputs.tachidesk_release_type }}-slim ghcr.io/suwayomi/suwayomi-server:${{ steps.get_latest_release_metadata.outputs.release_tag }}-slim # if [ "${{ inputs.tachidesk_release_type }}" == "stable" ]; then - # docker tag ghcr.io/suwayomi/tachidesk:${{ inputs.tachidesk_release_type }}-slim ghcr.io/suwayomi/tachidesk:latest-slim + # docker tag ghcr.io/suwayomi/suwayomi-server:${{ inputs.tachidesk_release_type }}-slim ghcr.io/suwayomi/suwayomi-server:latest-slim # fi - # docker image push "ghcr.io/suwayomi/tachidesk" --all-tags + # docker image push "ghcr.io/suwayomi/suwayomi-server" --all-tags - name: Send a Discord message through the webhook (preview build) if: inputs.do_upload && inputs.tachidesk_release_type == 'preview' run: | - curl -H "Content-Type: application/json" -d '{"content": "Docker Preview Image Published!","embeds":[{"color":16729344,"author":{"name":"${{ github.repository_owner }}","icon_url":"https://avatars.githubusercontent.com/u/81182076","url":"https://github.com/${{ github.repository_owner }}"},"title":"Docker Preview Release","url":"https://github.com/${{ github.repository_owner }}/docker-tachidesk","fields":[{"name":"docker update","value":"docker pull ghcr.io/suwayomi/tachidesk:preview","inline":false},{"name":"docker run","value":"docker run -p 4567:4567 ghcr.io/suwayomi/tachidesk:preview","inline":false}],"thumbnail":{"url": "https://www.docker.com/sites/default/files/d8/2019-07/vertical-logo-monochromatic.png"},"description":"Tachidesk version - ${{ steps.get_latest_release_metadata.outputs.release_tag }}"}]}' "https://discord.com/api/webhooks/${{ secrets.DISCORD_TACHIDESK_WEBHOOK_ID }}/${{ secrets.DISCORD_TACHIDESK_TOKEN }}" + curl -H "Content-Type: application/json" -d '{"content": "Docker Preview Image Published!","embeds":[{"color":16729344,"author":{"name":"${{ github.repository_owner }}","icon_url":"https://avatars.githubusercontent.com/u/81182076","url":"https://github.com/${{ github.repository_owner }}"},"title":"Docker Preview Release","url":"https://github.com/${{ github.repository_owner }}/Suwayomi-Server-docker","fields":[{"name":"docker update","value":"docker pull ghcr.io/suwayomi/suwayomi-server:preview","inline":false},{"name":"docker run","value":"docker run -p 4567:4567 ghcr.io/suwayomi/suwayomi-server:preview","inline":false}],"thumbnail":{"url": "https://www.docker.com/sites/default/files/d8/2019-07/vertical-logo-monochromatic.png"},"description":"Suwayomi-Server version - ${{ steps.get_latest_release_metadata.outputs.release_tag }}"}]}' "https://discord.com/api/webhooks/${{ secrets.DISCORD_TACHIDESK_WEBHOOK_ID }}/${{ secrets.DISCORD_TACHIDESK_TOKEN }}" - name: Send a Discord message through the webhook (stable build) if: inputs.do_upload && inputs.tachidesk_release_type == 'stable' run: | - curl -H "Content-Type: application/json" -d '{"content": "Docker Stable Image Published!","embeds":[{"color":5409028,"author":{"name":"${{ github.repository_owner }}","icon_url":"https://avatars.githubusercontent.com/u/81182076","url":"https://github.com/${{ github.repository_owner }}"},"title":"Docker Stable Release","url":"https://github.com/${{ github.repository_owner }}/docker-tachidesk","fields":[{"name":"docker update","value":"docker pull ghcr.io/suwayomi/tachidesk:stable","inline":false},{"name":"docker run","value":"docker run -p 4567:4567 ghcr.io/suwayomi/tachidesk","inline":false}],"thumbnail":{"url": "https://www.docker.com/sites/default/files/d8/2019-07/vertical-logo-monochromatic.png"},"description":"Tachidesk version - ${{ steps.get_latest_release_metadata.outputs.release_tag }}"}]}' "https://discord.com/api/webhooks/${{ secrets.DISCORD_TACHIDESK_WEBHOOK_ID }}/${{ secrets.DISCORD_TACHIDESK_TOKEN }}" + curl -H "Content-Type: application/json" -d '{"content": "Docker Stable Image Published!","embeds":[{"color":5409028,"author":{"name":"${{ github.repository_owner }}","icon_url":"https://avatars.githubusercontent.com/u/81182076","url":"https://github.com/${{ github.repository_owner }}"},"title":"Docker Stable Release","url":"https://github.com/${{ github.repository_owner }}/Suwayomi-Server-docker","fields":[{"name":"docker update","value":"docker pull ghcr.io/suwayomi/suwayomi-server:stable","inline":false},{"name":"docker run","value":"docker run -p 4567:4567 ghcr.io/suwayomi/suwayomi-server","inline":false}],"thumbnail":{"url": "https://www.docker.com/sites/default/files/d8/2019-07/vertical-logo-monochromatic.png"},"description":"Suwayomi-Server version - ${{ steps.get_latest_release_metadata.outputs.release_tag }}"}]}' "https://discord.com/api/webhooks/${{ secrets.DISCORD_TACHIDESK_WEBHOOK_ID }}/${{ secrets.DISCORD_TACHIDESK_TOKEN }}" diff --git a/README.md b/README.md index 3036dfe..a5c1f0c 100644 --- a/README.md +++ b/README.md @@ -1,18 +1,18 @@ -# Tachidesk-docker +# Suwayomi-Server Docker Container | Status | Stable | Preview | Discord Support | |:-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|:----------------------------------------------------------------------------------------------------------------------------------------------------------:| -| [![Build Docker Images](https://github.com/suwayomi/docker-tachidesk/actions/workflows/build_container_images.yml/badge.svg)](https://github.com/suwayomi/docker-tachidesk/actions/workflows/build_container_images.yml) [![Docker Pulls](https://img.shields.io/badge/dynamic/json?url=https://github.com/suwayomi/docker-tachidesk/raw/main/scripts/tachidesk_version.json&label=docker_pulls&query=$.total_downloads&color=blue)](https://github.com/orgs/suwayomi/packages/container/package/tachidesk) | [![Latest](https://img.shields.io/badge/dynamic/json?url=https://github.com/suwayomi/docker-tachidesk/raw/main/scripts/tachidesk_version.json&label=version&query=$.stable&color=blue)](https://github.com/orgs/suwayomi/packages/container/package/tachidesk/) | [![Preview](https://img.shields.io/badge/dynamic/json?url=https://github.com/suwayomi/docker-tachidesk/raw/main/scripts/tachidesk_version.json&label=version&query=$.preview&color=blue)](https://github.com/orgs/suwayomi/packages/container/package/tachidesk) | [![Discord](https://img.shields.io/discord/801021177333940224.svg?label=discord&labelColor=7289da&color=2c2f33&style=flat)](https://discord.gg/DDZdqZWaHA) | +| [![Build Docker Images](https://github.com/Suwayomi/Suwayomi-Server-docker/actions/workflows/build_container_images.yml/badge.svg)](https://github.com/Suwayomi/Suwayomi-Server-docker/actions/workflows/build_container_images.yml) [![Docker Pulls](https://img.shields.io/badge/dynamic/json?url=https://github.com/Suwayomi/Suwayomi-Server-docker/raw/main/scripts/tachidesk_version.json&label=docker_pulls&query=$.total_downloads&color=blue)](https://github.com/orgs/suwayomi/packages/container/package/tachidesk) | [![Latest](https://img.shields.io/badge/dynamic/json?url=https://github.com/Suwayomi/Suwayomi-Server-docker/raw/main/scripts/tachidesk_version.json&label=version&query=$.stable&color=blue)](https://github.com/orgs/suwayomi/packages/container/package/tachidesk/) | [![Preview](https://img.shields.io/badge/dynamic/json?url=https://github.com/Suwayomi/Suwayomi-Server-docker/raw/main/scripts/tachidesk_version.json&label=version&query=$.preview&color=blue)](https://github.com/orgs/suwayomi/packages/container/package/tachidesk) | [![Discord](https://img.shields.io/discord/801021177333940224.svg?label=discord&labelColor=7289da&color=2c2f33&style=flat)](https://discord.gg/DDZdqZWaHA) | Run [Suwayomi-Server](https://github.com/Suwayomi/Suwayomi-Server) inside docker container as non-root user. The server will be running on http://localhost:4567 open this url in your browser. -Docker Releases - https://github.com/suwayomi/docker-tachidesk/pkgs/container/tachidesk +Docker Releases - https://github.com/Suwayomi/Suwayomi-Server-docker/pkgs/container/tachidesk -Dockerfile - https://github.com/suwayomi/docker-tachidesk +Dockerfile - https://github.com/Suwayomi/Suwayomi-Server-docker _**Suwayomi data location - /home/suwayomi/.local/share/Tachidesk**_ -Docker images are mutli-arch (linux/amd64, linux/arm/v7, linux/arm64, linux/ppc64le, linux/s390x) and has small size based on Ubuntu linux. +Docker images are mutli-arch (linux/amd64, linux/arm64/v8, linux/ppc64le, linux/s390x, linux/riscv64) and has small size based on Ubuntu linux. Logs are sent to stdout and are not written to disk. @@ -74,7 +74,7 @@ There are a number of environment variables available to configure Suwayomi: We do not allow configuration of the downloads folder, since Docker Volumes can handle that instead, here is an example of a docker-compose.yaml that has downloads volume configuration: ```yaml tachidesk: - image: ghcr.io/suwayomi/tachidesk:stable + image: ghcr.io/suwayomi/suwayomi-server:stable container_name: tachidesk volumes: # The order matters! Make sure the downloads is first in the volume list or it will not work! - /example/tachidesk/downloads:/home/suwayomi/.local/share/Tachidesk/downloads @@ -88,19 +88,22 @@ We do not allow configuration of the downloads folder, since Docker Volumes can ## Latest -`ghcr.io/suwayomi/tachidesk:latest` +`ghcr.io/suwayomi/suwayomi-server:latest` The latest stable release of the server. Also tagged as `:stable`. +> [!CAUTION] +> Currently the `ghcr.io/suwayomi/suwayomi-server` image does not contain the stable release, please use `ghcr.io/suwayomi/tachidesk` for now instead. + ## Preview -`ghcr.io/suwayomi/tachidesk:preview` +`ghcr.io/suwayomi/suwayomi-server:preview` The latest preview release of the server. Can be buggy! # Credit -[Suwayomi-Server](https://github.com/Suwayomi/Tachidesk-Server) is licensed under `MPL v. 2.0`. +[Suwayomi-Server](https://github.com/Suwayomi/Suwayomi-Server) is licensed under `MPL v. 2.0`. # License diff --git a/docker-compose.yml b/docker-compose.yml index 38afd2e..0dc93f2 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -2,7 +2,7 @@ version: '3.7' services: suwayomi: - image: ghcr.io/suwayomi/tachidesk:preview + image: ghcr.io/suwayomi/suwayomi-server:preview environment: - TZ=Etc/UTC # Use TZ database name from https://en.wikipedia.org/wiki/List_of_tz_database_time_zones # Comment these out if you do not use the flaresolverr container at the bottom of this file