Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dockerhub build doesn't seem to work #66

Closed
scyto opened this issue Feb 16, 2022 · 10 comments
Closed

dockerhub build doesn't seem to work #66

scyto opened this issue Feb 16, 2022 · 10 comments
Labels
bug Something isn't working

Comments

@scyto
Copy link

scyto commented Feb 16, 2022

🪲 Describe the bug

I used the following to pull the image from dockerhub, getting a lot of 404 not found for scripts and logos.
I am little unclear why, my expectation is the container published is self contained.

version: '3.8'

services:
  apprise:
    image: caronc/apprise:latest
    ports:
      - 8050:8080
    user: "www-data:www-data"
    volumes:
#      - data:/opt/apprise/webapp:ro               # i tried with this both commented and uncommented - didn't seem to make a difference
#     ./config:/config:rw                                    # i chose to run without config file to just play
      
volumes:
  data:
    driver: gluster-vol1 
    

💡 Screenshots and Logs

2022-02-16 23:38:34,553 INFO Set uid to user 33 succeeded
2022-02-16 23:38:34,554 INFO supervisord started with pid 1
2022-02-16 23:38:35,558 INFO spawned: 'gunicorn' with pid 7
2022-02-16 23:38:35,561 INFO spawned: 'nginx' with pid 8
[2022-02-16 23:38:36 +0000] [7] [INFO] Starting gunicorn 20.1.0
[2022-02-16 23:38:36 +0000] [7] [INFO] Listening at: http://0.0.0.0:8080 (7)
[2022-02-16 23:38:36 +0000] [7] [INFO] Using worker: sync
[2022-02-16 23:38:36 +0000] [12] [INFO] Booting worker with pid: 12
[2022-02-16 23:38:36 +0000] [13] [INFO] Booting worker with pid: 13
[2022-02-16 23:38:36 +0000] [14] [INFO] Booting worker with pid: 14
[2022-02-16 23:38:36 +0000] [15] [INFO] Booting worker with pid: 15
[2022-02-16 23:38:36 +0000] [16] [INFO] Booting worker with pid: 16
2022-02-16 23:38:37,242 INFO success: gunicorn entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2022-02-16 23:38:37,242 INFO success: nginx entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2022-02-16 17:38:52,307 [WARNING] django.request: Not Found: /s/js/materialize.min.js
2022-02-16 17:38:52,309 [WARNING] django.request: Not Found: /s/js/sweetalert2.all.min.js
2022-02-16 17:38:52,313 [WARNING] django.request: Not Found: /s/logo.png
2022-02-16 17:38:52,672 [WARNING] django.request: Not Found: /s/iconfont/MaterialIcons-Regular.woff2

💻 Your System Details:
you latest docker container
running on latest docker

Client:
 Version:           20.10.5+dfsg1
 API version:       1.41
 Go version:        go1.15.15
 Git commit:        55c4c88
 Built:             Sat Dec  4 10:53:03 2021
 OS/Arch:           linux/amd64
 Context:           default
 Experimental:      true

Server:
 Engine:
  Version:          20.10.5+dfsg1
  API version:      1.41 (minimum version 1.12)
  Go version:       go1.15.15
  Git commit:       363e9a8
  Built:            Sat Dec  4 10:53:03 2021
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.4.12~ds1
  GitCommit:        1.4.12~ds1-1~deb11u1
 runc:
  Version:          1.0.0~rc93+ds1
  GitCommit:        1.0.0~rc93+ds1-5+b2
 docker-init:
  Version:          0.19.0
  GitCommit:        

🔮 Additional context
100% easy using the stack/compose i provided
I am wondering if looking at the examples this assumes I am running a whole bunch of the web interface from a mount - which seems really odd, i think i am missing something here, this doesn't seem like a self container container?

@scyto scyto added the bug Something isn't working label Feb 16, 2022
@scyto
Copy link
Author

scyto commented Feb 17, 2022

i found the linuxserver/docker-apprise image - thats what i was expecting, a fully functioning image
as such closing

@scyto scyto closed this as completed Feb 17, 2022
@caronc
Copy link
Owner

caronc commented Feb 18, 2022

I certainly welcome pull requests if you want to try to improve the docker setup. My knowledge is geared to Python mostly. The docker setup you see here today is all credit to the community.

I re-ran the instructions on my README page and the website seems to host correctly for me. But regardless, I'm sorry i wasn't able to help you and i'm glad you found an alternative solution! 👍

@scyto
Copy link
Author

scyto commented Feb 18, 2022

@caronc well I have an install to crib off now, and i like your app, and i do know a little about using github actions and docker buildx to make multiarch images whnever code changes. Might take a while but lemme see what i can do :-)

@martadinata666
Copy link

So i tried for test, it work, your deployment seems use port 8080 it should be 8000

#docker run --name apprise \
#   -p 8000:8000 \
#   -v /var/lib/apprise/config:/config \
#   -d caronc/apprise:latest
version: "3.8"
services:
  api:
    image: caronc/apprise:latest
    volumes:
      - config:/config
    ports:
      - 25000:8000

volumes:
  config:

@scyto
Copy link
Author

scyto commented Feb 18, 2022

@martadinata666 yes ithat was me trying 8080 (i had also tried 8000) based on the log output.

I have a fork with an amended container i am trying out.... probably a day away if you would like to try it out.... i have it working, just in middle of switch base image to alpine to make it smaller.... but stuck on alpines supervisord implementation. ...

plus using the current dockerfile as baseline whatever i do it ends up in large image, the linuxserver.io version seems to take a quite elegant approach but i havent fully unwound that in my head yet as i wanted to try and stay inline with the broad approach already used here for docker.

@scyto
Copy link
Author

scyto commented Feb 18, 2022

I have an initial dockerfile that refactors to use alpine and to get image size down to ~120MB on disk, 39MB compressed
https://github.com/scyto/apprise-api/blob/master/Dockerfile
also have this built
https://hub.docker.com/r/scyto/docker-apprise

Few things:

  1. I cheated on the apprise integration and installed using pip to pull in latest published release - to get going as fast as possible and understand relationship of apprise and apprise-api - I can look to git clone apprise into this and make on fly if that's preferred
  2. switched user to nginx for now as www-data wasn't in base image and i didn't want to mess with passwd / useradd at this point, will switch back in next phase
  3. next up i need to build the github action framework to use buildx to do multiple architectures - might do over this long weekend if i get a chance
  4. no lables yet, will add them layer

@caronc let me know if you want me to keep going or back away slowly, lol :-)

this is my working config FWIW

version: "3.8"
services:
  apprise-test:
    image: scyto/docker-apprise
    user: nginx:nginx
    environment:
      - TZ=Europe/London
    volumes:
      - /path-to-host-config-dir:/opt/apprise/webapp/var/config
    ports:
      - 8060:8000
    restart: always

@scyto
Copy link
Author

scyto commented Feb 18, 2022

I used the following to pull the image from dockerhub, getting a lot of 404 not found for scripts and logos.
I am little unclear why, my expectation is the container published is self contained.

so here is the wild part, these symptoms was actually caused by a new hyper-v feature affecting the docker swarm ingress network running on my ubuntu VMS! for some reason this app exhibit not found issues, whereas other apps were just really slow (grafana, portainer, etc). just logging reason for issue for posterity.

@caronc
Copy link
Owner

caronc commented Feb 20, 2022

Sorry for the delay in response; so just the port mapping is wrong from your standpoint?

Your docker-compose.yaml file pulls from a different source:

    image: scyto/docker-apprise

Is there something done differently that you'd prefer to be fixed that exists in mine instead caronc/apprise ?

Chris

@scyto
Copy link
Author

scyto commented Feb 20, 2022 via email

@caronc
Copy link
Owner

caronc commented Feb 20, 2022

I'm definitely not keen on breaking changes, but if you think there is a better way going forward for everyone and can still maintain the multi-architecture support, then I'm all on board. I'd welcome your PR! 🙂

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants