Merge pull request #967 from Suika/doc-updates

Doc updates
This commit is contained in:
Hydrus Network Developer 2021-08-25 13:25:43 -05:00 committed by GitHub
commit 760e7503e8
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 93 additions and 11 deletions

View File

@ -6,7 +6,8 @@ I am continually working on the software and try to put out a new release every
This github repository is currently a weekly sync with my home dev environment, where I work on hydrus by myself. **Feel free to fork and do whatever you like with my code, but please do not make pull requests.** The [issue tracker here on Github](https://github.com/hydrusnetwork/hydrus/issues) is active and run by blessed volunteer users. I am not active here on Github, and I have difficulty keeping up with social media in general, but I welcome feedback of any sort and will eventually catch up with and reply to email, the 8chan or Endchan, tumblr, twitter, or the discord.
The client can do quite a lot! Please check out the help inside the release or [here](https://hydrusnetwork.github.io/hydrus/help), which includes a comprehensive getting started guide.
The client can do quite a lot! Please check out the help inside the release or [here](https://hydrusnetwork.github.io/hydrus/help), which includes a comprehensive getting started guide.
A rudimentary documentation for the [container](https://github.com/hydrusnetwork/hydrus/pkgs/container/hydrus) setup can be found [here](https://github.com/hydrusnetwork/hydrus/blob/master/static/build_files/docker/README.md).
* [homepage](https://hydrusnetwork.github.io/hydrus/)
* [issue tracker](https://github.com/hydrusnetwork/hydrus/issues)

View File

@ -1,12 +1,12 @@
# Hydrus in a container(docker)
# Hydrus in a container(HiC)
Latest hydrus client that runs in docker 24/7. Employs xvfb and vnc. Runs on alpine.
Start container: `docker run --name hydrusclient -d -p 5800:5800 -p 5900:5900 ghcr.io/hydrusnetwork/hydrus:latest`.
TL;DR: `docker run --name hydrusclient -d -p 5800:5800 -p 5900:5900 ghcr.io/hydrusnetwork/hydrus:latest`.
Connect to noVNC via `http://yourdockerhost:5800/vnc.html` or use [Tiger VNC Viewer](https://bintray.com/tigervnc/stable/download_file?file_path=vncviewer-1.9.0.exe) or any other VNC client and connect on port **5900**.
For persisten storage you can either create a named volume or mount a new/existing db path `-v /hydrus/client/db:/opt/hydrus/db`.
The client runs with default permissions of `1000:1000`, ~~this can be changed by the ENV `UID` and `GID`(not working atm, fixed to 1000)~~ will be fixed someday.
For persistent storage you can either create a named volume or mount a new/existing db path `-v /hydrus/client/db:/opt/hydrus/db`.
The client runs with default permissions of `1000:1000`, ~~this can be changed by the ENV `UID` and `GID`(not working atm, fixed to 1000)~~ will be fixed someday.
#### The container will **NOT** fix the permissions inside the db folder. **CHOWN YOUR DB FOLDER CONTENT ON YOUR OWN**
@ -15,9 +15,22 @@ If you have enough RAM, mount `/tmp` as tmpfs. If not, download more RAM.
As of `v359` hydrus understands IPFS `nocopy`. And can be easily run with go-ipfs container.
Read [Hydrus IPFS help](https://hydrusnetwork.github.io/hydrus/help/ipfs.html). Mount `HOST_PATH_DB/client_files` to `/data/client_files` in ipfs. Go manage the ipfs service and set the path to `/data/client_files`, you'll know where to put it in.
**OR**, the compose file:
```
version: '2'
Example compose file:
```yml
version: '3.8'
volumes:
tor-config:
driver: local
hybooru-pg-data:
driver: local
hydrus-server:
driver: local
hydrus-client:
driver: local
ipfs-data:
driver: local
hydownloader-data:
driver: local
services:
hydrusclient:
image: ghcr.io/hydrusnetwork/hydrus:latest
@ -27,7 +40,7 @@ services:
- UID=1000
- GID=1000
volumes:
- HOST_PATH_DB:/opt/hydrus/db
- hydrus-client:/opt/hydrus/db
tmpfs:
- /tmp #optional for SPEEEEEEEEEEEEEEEEEEEEEEEEED and less disk access
ports:
@ -35,24 +48,92 @@ services:
- 5900:5900 #VNC
- 45868:45868 #Booru
- 45869:45869 #API
hydrusserver:
image: ghcr.io/hydrusnetwork/hydrus:server
container_name: hydrusserver
restart: unless-stopped
volumes:
- hydrus-server:/opt/hydrus/db
hydrusclient-ipfs:
image: ipfs/go-ipfs
container_name: hydrusclient-ipfs
restart: unless-stopped
volumes:
- HOST_PATH_IPFS:/data/ipfs
- HOST_PATH_DB/client_files:/data/client_files:ro
- ipfs-data:/data/ipfs
- hydrus-clients:/data/db:ro
ports:
- 4001:4001 # READ
- 5001:5001 # THE
- 8080:8080 # IPFS
- 8081:8081 # DOCS
hydrus-web:
image: floogulinc/hydrus-web
container_name: hydrus-web
restart: always
ports:
- 8080:80 # READ
hybooru-pg:
image: healthcheck/postgres
container_name: hybooru-pg
environment:
- POSTGRES_USER=hybooru
- POSTGRES_PASSWORD=hybooru
- POSTGRES_DB=hybooru
volumes:
- hybooru-pg-data:/var/lib/postgresql/data
restart: unless-stopped
hybooru:
image: suika/hybooru:latest # https://github.com/funmaker/hybooru build it yourself
container_name: hybooru
restart: unless-stopped
depends_on:
hybooru-pg:
condition: service_started
ports:
- 8081:80 # READ
volumes:
- hydrus-client:/opt/hydrus/db
hydownloader:
image: ghcr.io/thatfuckingbird/hydownloader:edge
container_name: hydownloader
restart: unless-stopped
ports:
- 53211:53211
volumes:
- hydownloader-data:/db
- hydrus-client:/hydb
tor-socks-proxy:
#network_mode: "container:myvpn_container" # in case you have a vpn container
container_name: tor-socks-proxy
image: peterdavehello/tor-socks-proxy:latest
restart: unless-stopped
tor-hydrus:
image: goldy/tor-hidden-service
container_name: tor-hydrus
depends_on:
hydrusclient:
condition: service_healthy
hydrusserver:
condition: service_healthy
hybooru:
condition: service_started
environment:
HYBOORU_TOR_SERVICE_HOSTS: '80:hybooru:80'
HYBOORU_TOR_SERVICE_VERSION: '3'
HYSERV_TOR_SERVICE_HOSTS: 45870:hydrusserver:45870,45871:hydrusserver:45871
HYSERV_TOR_SERVICE_VERSION: '3'
HYCLNT_TOR_SERVICE_HOSTS: 45868:hydrusclient:45868,45869:hydrusclient:45869
HYCLNT_TOR_SERVICE_VERSION: '3'
volumes:
- tor-config:/var/lib/tor/hidden_service
```
Further containerized application of interest:
- [Hybooru](https://github.com/funmaker/hybooru): [Hydrus](https://github.com/hydrusnetwork/hydrus)-based booru-styled imageboard in React, inspired by [hyve](https://github.com/mserajnik/hyve/).