BigBoot / AutoKuma

AutoKuma is a utility that automates the creation of Uptime Kuma monitors based on Docker container labels. With AutoKuma, you can eliminate the need for manual monitor creation in the Uptime Kuma UI.
MIT License
300 stars 15 forks source link

feature request: Provide aarch64 docker images #37

Closed schmierlappe closed 6 months ago

schmierlappe commented 6 months ago

I'm facing this issue on a rpi's docker swarm config with standard compose file

Error grabbing logs: rpc error: code = Unknown desc = warning: incomplete log stream. some logs could not be retrieved for the following reasons: task ph9yvojkg89sv7g45ugpjdad1 has not been scheduled

version: "3.9"

services:   
  autokuma:
    image: ghcr.io/bigboot/autokuma:latest
    restart: unless-stopped
    environment:
      AUTOKUMA__KUMA__URL: http://localhost:3001
      # AUTOKUMA__KUMA__USERNAME: <username> 
      # AUTOKUMA__KUMA__PASSWORD: <password>
      # AUTOKUMA__KUMA__MFA_TOKEN: <token>
      # AUTOKUMA__KUMA__HEADERS: "<header1_key>=<header1_value>,<header2_key>=<header2_value>,..."
      # AUTOKUMA__KUMA__CALL_TIMEOUT: 5
      # AUTOKUMA__KUMA__CONNECT_TIMEOUT: 5
      # AUTOKUMA__TAG_NAME: AutoKuma
      # AUTOKUMA__TAG_COLOR: "#42C0FB"
      # AUTOKUMA__DEFAULT_SETTINGS: |- 
      #    docker.docker_container: {{container_name}}
      #    http.max_redirects: 10
      #    *.max_retries: 3
      # AUTOKUMA__SNIPPETS__WEB: |- 
      #    {{container_name}}_http.http.name: {{container_name}} HTTP
      #    {{container_name}}_http.http.url: https://{{@0}}:{{@1}}
      #    {{container_name}}_docker.docker.name: {{container_name}} Docker
      #    {{container_name}}_docker.docker.docker_container: {{container_name}}
      # AUTOKUMA__DOCKER__SOCKET: /var/run/docker.sock
      # AUTOKUMA__DOCKER__LABEL_PREFIX: kuma     
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock

any idea?

BigBoot commented 6 months ago

I'm not sure, this looks more like a general Docker Swarm problem, are you able to run the container using plain docker on the node to see potential problems?

schmierlappe commented 6 months ago

with local docker compose file I get this

[+] Running 0/1 ⠏ autokuma Pulling 0.9s no matching manifest for linux/arm64/v8 in the manifest list entries

tried on a rpi4

BigBoot commented 6 months ago

Yes I currently don't provide arm images, you would need to build the image from source in that case and arm support is untested

BigBoot commented 6 months ago

Small update, I just built a aarch64 image locally and everything seems to work fine, that said I won't be able to provide official builds unless/until GitHub rolls out aarch64 to everyone.

schmierlappe commented 6 months ago

could be docker hub an alternative?

schmierlappe commented 6 months ago

there I found this one

https://hub.docker.com/r/jasonmc1993/autokuma-arm

mmospanenko commented 6 months ago

yeah, arm64 is very important, we have whole infrastructure on arm (ampere)

BigBoot commented 6 months ago

I've added qemu based aarch64 builds, unfortunately this increases build time from ~7 minutes to ~60 so I'll only build these on tags. Additionally they will remain experimental for the time being. There is a test build available here: https://github.com/BigBoot/AutoKuma/pkgs/container/autokuma/215277216?tag=sha-1b4bdf8

mmospanenko commented 6 months ago

Thank you, only for major releases will be enough I think)

yes, it could be base image related, try with different distros - debian slim, alpine, etc. I have similar behavior on my project (python, ssl related things...), it depends on build process for dependencies, os related deps, etc.