Sign inSign up

hoshinoneko/hentaiathome

By hoshinoneko

Updated almost 4 years ago

Image
0

274

hoshinoneko/hentaiathome repository overview

Hentai@Home on Docker

For those wanna use nginx haproxy or something else before the Hentai@Home client to do sni-based filtering and serve at the same 443/tcp port. Before use this check if your nginx has modules below

stream
stream_preread_module
stream_realip_module

Support platforms:

linux/amd64
linux/arm64
linux/arm

Deploy

Replace /DOWNLOAD_DIR YOUR_CLIENT_KEY YOUR_PORT with yours.

The format of YOUR_CLIENT_KEY

"$Client ID"-"$Client Key" like this: 000000-ABCDEFGHIJKLMN1234OP

About YOUR_PORT

Configure your client port to 443 on https://e-hentai.org/hentaiathome.php Client ---------- (443) Nginx ----------- (3000) go-mmproxy ---------- (443)H@H
^~Docker NAT {YOUR_PORT_FOR_NGINX}

Setting up nginx

Example stream directive for nginx.conf

stream {
    upstream ssh {
        server 127.0.0.1:6541;
    }
    upstream web {
        server 127.0.0.1:10443;
    }
    upstream hath {
        server 127.0.0.1:{YOUR_PORT_FOR_NGINX};
    }
    map $ssl_preread_protocol $upstream {
        "" ssh;
        default $sni;
        "TLSv1.1" $sni;
        "TLSv1.2" $sni;
        "TLSv1.3" $sni;
    }

    map $ssl_preread_server_name $sni {
        keepalive 10;
        hostnames;
        proxy_buffer_size 600k;
        *.hath.network hath;
        default web;
    }
    server {
        listen 443;
        proxy_pass $upstream;
        ssl_preread on;
        proxy_protocol on;
    }
}

Then change conf.d/*.conf to start like below

        listen 80;
        listen [::]:80;
        listen 10443 ssl http2 proxy_protocol;
        listen [::]:10443 ssl http2 proxy_protocol;
        set_real_ip_from 127.0.0.1;
        real_ip_header proxy_protocol;

As to those site hosting with CDN

        listen 80;
        listen [::]:80;
        listen 10443 ssl http2 proxy_protocol;
        listen [::]:10443 ssl http2 proxy_protocol;
        set_real_ip_from 127.0.0.1;
        real_ip_header X_FORWARDED_FOR;

https://ehwiki.org/wiki/Technical_Issues#Ports

Run command below:

#Pull image
sudo docker pull hoshinoneko/hentaiathome

#Create volume for caches and logs
sudo docker volume create hath_data

#Run it
sudo docker run -d --name hath -p YOUR_PORT_FOR_NGINX:3000 -v h_at_h_data:/hath/data -v /DOWNLOAD_DIR:/hath/download -e HatH_KEY=YOUR_CLIENT_KEY  --cat-add NET_ADMIN hoshinoneko/hentaiathome

Update:

#Stop
sudo docker stop hath

#Delete
sudo docker rm hath

#Delete old image
sudo docker rmi hoshinoneko/hentaiathome

#Pull new image
sudo docker pull hoshinoneko/hentaiathome

#Run it
sudo docker run -d --name hath-p YOUR_PORT_FOR_NGINX:3000 -v hath_data:/hath/data -v /DOWNLOAD_DIR:/hath/download --cat-add NET_ADMIN hoshinoneko/hentaiathome
About Port:
    DON'T USE host network just use bridge or custom network

Changelog

2020/10/06 Graceful shutdown
2021/06/09 DockerHUB has stopped free plan from using Autobuild feature, until i found other ways to update image, there will not have any update.
2021/07/01 Now using Github action to build image.
2022/06/04 Use Eclipse temurin images.

Tag summary

Content type

Image

Digest

sha256:798ca6b5d

Size

94.7 MB

Last updated

almost 4 years ago

docker pull hoshinoneko/hentaiathome