Giter VIP home page Giter VIP logo

docker-h5ai's Issues

could not add path via nginx reverse proxy

I don't want to use subdomain to serve it, instead add a custom path into url, such as https://example.com/share.

my nginx config is looks like:

location /share/ {
        proxy_read_timeout 60m;
	proxy_set_header Host $host;
	proxy_set_header X-Forwarded-Proto https;
	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
	proxy_set_header X-Real-IP $remote_addr;
	proxy_pass http://127.0.0.1:8000/;
}

location /_h5ai/ {
        proxy_pass http://127.0.0.1:8000/h5ai;
}

It won't show files in browser, what am I wrong or something missing? please help me.

Question

My understanding is that the _h5ai folder must be within the root directory of the files being indexed, however, this seems to not be a limitation with your docker image. Could you explain how this was done? Thanks.

Turn on file search?

"search": {
"enabled": true,
"advanced": true,
"debounceTime": 300,
"ignorecase": true
},

 "enabled": false,  change  true

Did not take effect, what should I do?

Changing the active port

Hi, I was wondering on how to change the port since i have other things hosted on different ports that h5ai might be trying to use

Hardware: Raspberry Pi4
OS: Debian 11 (bullseye)

Builds for arm64

First of all, thank you for creating this repo! I have zero clue on how to work with PHP and was having a tough time trying to build a Docker image for h5ai!

I have been building arm64 images of your repo because I wanted to run them off of my Raspberry Pi. Building arm64 works out the box without any changes to your code. https://github.com/b-ggs/dockerfiles/runs/1914884700?check_suite_focus=true

I was wondering if you're interested in supporting arm64 or possible other architectures like arm32v7.

I can contribute but I don't think there's a fully supported way to do it with Docker cloud. I have mine set up with GitHub Actions. https://github.com/b-ggs/dockerfiles/blob/9b15759b2e6596e9ed7cc9aa713988047d63d7f8/.github/workflows/buildx.yml#L46

webm thumbnail failure

Hello there, I've recently replaced corfr/h5ai with your container but have noticed that I no longer get thumbnails for webm files.
When I click them to preview the file fullscreen, it will work fine (at least in my browser, Firefox).

The error I'm getting via docker logs when requested is as follows:

172.18.0.12 - - [11/Nov/2021:16:39:34 +0000] "GET directory/file.webm HTTP/1.1" 206 131147 "https://domain/directory/" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:94.0) Gecko/20100101 Firefox/94.0" "myip"
2021/11/11 16:43:17 [error] 41#41: *87 FastCGI sent in stderr: "PHP message: PHP Fatal error:  Allowed memory size of 134217728 bytes exhausted (tried to allocate 36864 bytes) in /config/h5ai/_h5ai/private/php/ext/class-thumb.php on line 148" while reading response header from upstream, client: 172.18.0.12, server: _, request: "POST /directory/ HTTP/1.1", upstream: "fastcgi://127.0.0.1:9000", host: "domain", referrer: "https://domain/directory/"

Thumbnails not displaying due to low PHP memory limit

Hi, I just installed this image and everything worked fine, except for file preview thumbnails. I was able to fix this by editing the memory_limit setting in /etc/php8/php.ini to -1 (unlimited):

sed -i -e '/memory_limit =/ s/= .*/= -1/' /etc/php8/php.ini

If you think this should be the default value then I could PR this (what would be the appropriate step to perform this in? Dockerfile or init.sh?). Thanks!

Unable to login with credentials

Hereby I am running the image on my unRaid host and I wanted to add authentication when visiting. The docker config can be found below:
image
However, when I visit the WebUI, entering the credentials, Chrome kept popping up a new input box for me to re-enter (failed to login).

unRaid log:

192.168.11.2 - admin [13/Jul/2021:16:15:07 -0700] "GET / HTTP/1.1" 401 581 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.93 Safari/537.36" "-"
2021/07/13 16:15:10 [error] 44#44: *2 user "admin" was not found in "/config/nginx/.htpasswd", client: 192.168.11.2, server: _, request: "GET / HTTP/1.1", host: "192.168.11.1:55555"

Was it a bug or my setup-side issue?

PUID and PGID env variables have no effect

Hello,

Using the env variables PUID and PGID has no effect.

To replicate the issue:

  • Map volume that contains files with permission 770 to /h5ai
  • Run the container passing the PUID and PGID env variables to match the owner's of the mapped volume
  • Result: files are not seen by h5ai

If I instead chmod the mapped volume to 774, h5ai is able to see my files. As far as I know, the container should be able to see my files without chmoding the mapped volume to allow others to see them. Emby's image (https://hub.docker.com/r/linuxserver/emby) seems to manage that the right way.

fatel error

not sure if h5ai is not compatible with rclone mount

docker-compose.yml

version: '3.5'

services:
  h5ai:
    image: awesometic/h5ai
    container_name: h5ai
    restart: unless-stopped
    depends_on: 
      - rclone
    logging:
      options:
        max-size: "10m"
        max-file: "3"
    env_file:
      - .env
      - .env.rclone
    environment:
      - TZ=${TZ}
      - PUID=${PUID}
      - PGID=${PGID}
    ports:
      - 5573:80
    volumes:
      - /etc/passwd:/etc/passwd:ro
      - /etc/group:/etc/group:ro
      - /etc/localtime:/etc/localtime:ro
      - ./config/h5ai:/config
      - /mnt/rclone/mnt:/h5ai:shared
Variables:
        - PUID=1000
        - PGID=1000
        - TZ=Pacific/Auckland
        - HTPASSWD=false
        - HTPASSWD_USER=guest
        - HTPASSWD_PW=
Make config directories...
useradd: cannot open /etc/passwd
groupmod: group 'abc' does not exist
usermod: user 'abc' does not exist
Add dummy user for better handle permission...
Check configuration files for Nginx...
User setup files found: /config/nginx/h5ai.conf
Remove image's default setup files and copy the previous version...
Check configuration files for h5ai...
User setup files found: /config/h5ai/_h5ai
Check if h5ai version updated...
Remove image's default setup files and copy the existing version...
Set permission for caching...
Fix ownership for Nginx and php-fpm...
Set ownership to the configuration files...
chown: unknown user/group abc:abc
Start supervisord...
2021-10-13 02:31:02,555 INFO Set uid to user 0 succeeded
2021-10-13 02:31:02,557 INFO supervisord started with pid 35
2021-10-13 02:31:03,561 INFO spawned: 'nginx' with pid 36
2021-10-13 02:31:03,565 INFO spawned: 'php-fpm' with pid 37
2021/10/13 02:31:03 [emerg] 36#36: getpwnam("abc") failed in /etc/nginx/nginx.conf:2
nginx: [emerg] getpwnam("abc") failed in /etc/nginx/nginx.conf:2
2021-10-13 02:31:03,620 INFO exited: nginx (exit status 1; not expected)
[13-Oct-2021 02:31:03] ERROR: [pool www] cannot get uid for user 'abc'
[13-Oct-2021 02:31:03] ERROR: FPM initialization failed
2021-10-13 02:31:03,634 INFO gave up: nginx entered FATAL state, too many start retries too quickly
2021-10-13 02:31:03,635 INFO exited: php-fpm (exit status 78; not expected)
2021-10-13 02:31:04,637 INFO gave up: php-fpm entered FATAL state, too many start retries too quickly

multiple users

not an issue, this works great!
I use it to share photos with my family.
Anyway to add more unique users/passwords?

Fatal Python error: init_interp_main: can't initialize time

my env :
pi 3 B+
armv7 32

docker run -d --name=h5ai
-p 801:80
-v /mnt/usb_flash/Aria2/aria2-downloads:/h5ai/aria2-downloads
-v /mnt/usb_flash/resilio-sync:/h5ai/resilio-sync
-v /mnt/usb_flash/h5ai-config:/config
-e PUID=1000
-e PGID=1000
-e TZ=Asia/Shanghai
--restart unless-stopped
awesometic/h5ai

then I got some errors by logs and restart Automatically every 2 sec

logs:

Variables:
- PUID=1000
- PGID=1000
- TZ=Asia/Shanghai
- HTPASSWD=false
- HTPASSWD_USER=guest
- HTPASSWD_PW=
Configure timezone for PHP...
Make config directories...
Add dummy user for better handle permission...
Check configuration files for Nginx...
User setup files found: /config/nginx/h5ai.conf
Remove image's default setup files and copy the previous version...
Check configuration files for h5ai...
User setup files found: /config/h5ai/_h5ai
Check if h5ai version updated...
Remove image's default setup files and copy the existing version...
Set permission for caching...
Fix ownership for Nginx and php-fpm...
Set ownership to the configuration files...
Start supervisord...
Fatal Python error: init_interp_main: can't initialize time
Python runtime state: core initialized
PermissionError: [Errno 1] Operation not permitted

Current thread 0x76f85390 (most recent call first):

Variables:
- PUID=1000
- PGID=1000
- TZ=Asia/Shanghai
- HTPASSWD=false
- HTPASSWD_USER=guest
- HTPASSWD_PW=
Make config directories...
Add dummy user for better handle permission...
useradd: user 'abc' already exists
usermod: no changes
Check configuration files for Nginx...
User setup files found: /config/nginx/h5ai.conf
Remove image's default setup files and copy the previous version...
Check configuration files for h5ai...
User setup files found: /config/h5ai/_h5ai
Check if h5ai version updated...
Remove image's default setup files and copy the existing version...
Set permission for caching...
Fix ownership for Nginx and php-fpm...
Set ownership to the configuration files...
Start supervisord...
Fatal Python error: init_interp_main: can't initialize time
Python runtime state: core initialized
PermissionError: [Errno 1] Operation not permitted

what might be happened there and why ?
I have no idea about that....

thanks

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.