Giter VIP home page Giter VIP logo

docker-amule's Introduction

ngosang/amule

Latest release Docker Pulls Donate PayPal Donate Bitcoin Donate Ethereum

aMule is a multi-platform client for the ED2K file sharing network and based on the windows client eMule. aMule started in August 2003, as a fork of xMule, which is a fork of lMule.

Download Screenshot

Inspired by tchabaud and synopsis8 work.

Docker Registry

Docker images are available in GHCR and DockerHub.

docker pull ghcr.io/ngosang/amule
or
docker pull ngosang/amule

Supported Architectures

The architectures supported by this image are:

  • linux/amd64
  • linux/arm/v6
  • linux/arm/v7
  • linux/arm64/v8
  • linux/ppc64le
  • linux/s390x
  • linux/riscv64

Application Setup

The web interface is at: <your-ip>:4711

For better download speed you have to open these ports:

  • 4662 TCP
  • 4665 UDP
  • 4672 UDP

Usage

Here are some example snippets to help you get started creating a container.

Note

When you start aMule all shared folders are scanned. The user interface will not be available until the process is finished. You can check the logs and CPU usage to know the status.

docker-compose

Compatible with docker-compose v2 schemas.

---
version: "2.1"
services:
  amule:
    image: ngosang/amule
    container_name: amule
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/London
      - GUI_PWD=<fill_password>
      - WEBUI_PWD=<fill_password>
      - MOD_AUTO_RESTART_ENABLED=true
      - MOD_AUTO_RESTART_CRON=0 6 * * *
      - MOD_AUTO_SHARE_ENABLED=false
      - MOD_AUTO_SHARE_DIRECTORIES=/incoming;/my_movies
      - MOD_FIX_KAD_GRAPH_ENABLED=true
      - MOD_FIX_KAD_BOOTSTRAP_ENABLED=true
    ports:
      - "4711:4711" # web ui
      - "4712:4712" # remote gui, webserver, cmd ...
      - "4662:4662" # ed2k tcp
      - "4665:4665/udp" # ed2k global search udp (tcp port +3)
      - "4672:4672/udp" # ed2k udp
    volumes:
      - <fill_amule_configuration_path>:/home/amule/.aMule
      - <fill_amule_completed_downloads_path>:/incoming
      - <fill_amule_incomplete_downloads_path>:/temp
    restart: unless-stopped

docker cli

docker run -d \
  --name=amule \
  -p 4711:4711 \
  -p 4712:4712 \
  -p 4662:4662 \
  -p 4665:4665/udp \
  -p 4672:4672/udp \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=Europe/London \
  -e GUI_PWD=<fill_password> `#optional` \
  -e WEBUI_PWD=<fill_password> `#optional` \
  -e MOD_AUTO_RESTART_ENABLED=true `#optional` \
  -e 'MOD_AUTO_RESTART_CRON=0 6 * * *' `#optional` \
  -e MOD_AUTO_SHARE_ENABLED=false `#optional` \
  -e MOD_AUTO_SHARE_DIRECTORIES=/incoming;/my_movies `#optional` \
  -e MOD_FIX_KAD_GRAPH_ENABLED=true `#optional` \
  -e MOD_FIX_KAD_BOOTSTRAP_ENABLED=true `#optional` \
  -v <fill_amule_configuration_path>:/home/amule/.aMule \
  -v <fill_amule_completed_downloads_path>:/incoming \
  -v <fill_amule_incomplete_downloads_path>:/temp \
  --restart unless-stopped \
  ngosang/amule

Parameters

Container images are configured using parameters passed at runtime (such as those above). These parameters are separated by a colon and indicate <external>:<internal> respectively. For example, -p 8080:80 would expose port 80 from inside the container to be accessible from the host's IP on port 8080 outside the container.

Parameter Function
-p 4711 Web UI port.
-p 4712 Remote gui, webserver, cmd port.
-p 4662 ED2K TCP port (must be open to Internet).
-p 4665/udp ED2K global search UDP port (tcp port +3) (must be open to Internet).
-p 4672/udp ED2K UDP port (must be open to Internet).
-e PUID=1000 for UserID - see below for explanation.
-e PGID=1000 for GroupID - see below for explanation.
-e TZ=Europe/London Specify a timezone to use EG Europe/London.
-e GUI_PWD=<fill_password> Set Remote GUI password. It will overwrite the password in the config files.
-e WEBUI_PWD=<fill_password> Set Web UI password. It will overwrite the password in the config files.
-e MOD_AUTO_RESTART_ENABLED=true Enable aMule auto restart. Check modifications section.
-e 'MOD_AUTO_RESTART_CRON=0 6 * * *' aMule auto restart cron mask. Check modifications section.
-e MOD_AUTO_SHARE_ENABLED=false Enable aMule auto share. Check modifications section.
-e MOD_AUTO_SHARE_DIRECTORIES=/incoming;/my_movies aMule auto share directories with subdirectories. Check modifications section.
-e MOD_FIX_KAD_GRAPH_ENABLED=true Fix Kad stats graph bug. Check modifications section.
-e MOD_FIX_KAD_BOOTSTRAP_ENABLED=true Fix Kad bootstrap bug. Check modifications section.
-v /home/amule/.aMule Path to save aMule configuration.
-v /incoming Path to completed torrents.
-v /temp Path to incomplete torrents.

User / Group Identifiers

When using volumes (-v flags) permissions issues can arise between the host OS and the container, we avoid this issue by allowing you to specify the user PUID and group PGID.

Ensure any volume directories on the host are owned by the same user you specify and any permissions issues will vanish like magic.

In this instance PUID=1000 and PGID=1000, to find yours use id user as below:

  $ id username
    uid=1000(dockeruser) gid=1000(dockergroup) groups=1000(dockergroup)

Modifications

The Docker image includes some unofficial features. All of them are optional.

aMule Web UI Reloaded theme

The Docker image includes the classic aMule Web UI and AmuleWebUI-Reloaded theme.

You can change the theme editing the amule.conf file and changing Template=AmuleWebUI-Reloaded. Let this option empty to use the default theme.

Auto restart mod

aMule has some issues that cause it to stop working properly after a few days:

As workaround, we have implemented a cron scheduler to restart aMule from time to time. To enable this mod set these environment variables:

  • MOD_AUTO_RESTART_ENABLED=true
  • MOD_AUTO_RESTART_CRON=0 6 * * * => Cron mask is configurable. In the example it restarts everyday at 6:00h.

Auto share mod

By default, aMule only shares "incoming" directory and shared folders cannot be selected in the Web UI

We have added this option in the Docker image. The configuration is updated when the container starts. Note that sub-directories are also shared!

  • MOD_AUTO_SHARE_ENABLED=true
  • MOD_AUTO_SHARE_DIRECTORIES=/incoming;/my_movies => List of directories separated by semicolon ';'. Subdirectories will be shared too.

Fix Kad stats graph mod

aMule has an issue when it renders Kad stats graph that crash the application. The crash happens when you enter in the Web UI stats after few days running.

As workaround, we removed the image causing the issue from the Web UI. Since the image is not requested the server doesn't crash.

  • MOD_FIX_KAD_GRAPH_ENABLED=true

Fix Kad bootstrap mod

aMule does not download the nodes.dat file required to bootstrap the Kad network. This causes it not to connect to the Kad network.

As workaround, we are downloading the nodes.dat file before starting aMule. The file is only downloaded if it has not been downloaded before.

  • MOD_FIX_KAD_BOOTSTRAP_ENABLED=true

docker-amule's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar

docker-amule's Issues

Connection lost when VPN changes server

I'm on Unraid and I'm routing aMule through Gluetun VPN and everything works fine, but when the VPN goes down then after Gluetun has established a new connection then aMule no longer works. No traffic in both directions until it's been restarted, then it gets back working as usual.
I've already tried with Rebuild-DNDC, but since the connection drop lasts 5 seconds when it checks the connection status it's already healty again, so from its point of view there's no need to rebuild the containers routed to the VPN connection.

Any possible solution ? Thanks

Volumes on CIFS share

Sorry for the dumb question but I have no knowledge on lot of Linux commands, I have a proxmox machine where I try several things, one of them is this amule image running in an unprivileged debian ct. I have a Lacie Wireless Space network drive with only CIFS support. I made some search and found that I can use bind mounts to have files shared between the ct and the host, however if I download for example a video and then do a filetype search, I see the downloaded file is a folder like this

./var/lib/docker/overlay2/VERYLONGALPHANUMERICSTRING/merged/incoming/DOWNLOADEDVIDEO.mkv

so the file is not visible at the shared lan drive, I know this is a strange setup, I ask also for the future, it will be easier to use for example a Synology NAS using NFS share for this amule image? maybe not so usefull if I can install amule directly on the NAS.

I know this is NOT AN ISSUE but hope someone can help me.

Unable to auto share directories with subdirectories

Using Raspberry PI 4 and this compose I am unable to share other folders more than /incoming and /temp

Locally I have this folder that I need to share /media/Disk-5A/compartir/new/
(even /media/Disk-5A/compartir/ is mapped as /incoming, and 'new' is a subfolder, is not shared when the MOD_AUTO_SHARE_ENABLED is True)

This is my compose:

version: "2.1"
services:
  amule:
    image: ngosang/amule
    container_name: amule
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Madrid
      # GUI_PWD and WEBUI_PWD are only used in initial setup
      - GUI_PWD=xxxxx  
      - WEBUI_PWD=xxxxx
      - MOD_AUTO_RESTART_ENABLED=true
      - MOD_AUTO_RESTART_CRON=0 6 * * *
      - MOD_AUTO_SHARE_ENABLED=True
      - MOD_AUTO_SHARE_DIRECTORIES=/incoming;/new;/otra_carpeta;  #/my_movies
      - MOD_FIX_KAD_GRAPH_ENABLED=true
    ports:
      - "4711:4711" # web ui
      - "4712:4712" # remote gui, webserver, cmd ...
      - "4662:4662" # ed2k tcp
      - "4665:4665/udp" # ed2k global search udp (tcp port +3)
      - "4672:4672/udp" # ed2k udp
    volumes:
      - /media/Disk-5A/amule:/home/amule/.aMule
      - /media/Disk-5A/compartir/:/incoming
      - /media/Disk-5A/amule/temp:/temp
    restart: unless-stopped

To mention, that MOD_AUTO_SHARE_DIRECTORIES and MOD_AUTO_SHARE_ENABLED were updated after the container was run for the first time.

No puedo loguearme desde raspberry pi 4

No puedo entrar en la web con la contraseña que he puesto en el docke-compose.
La imagen va en una raspberry pi 4.

Meto la contraseña en el campo de la web que se activa nada mas cargarla y no me entra nunca, recarga la pagina y vuelve al mismo punto.

He probado este mismo docker compose en linux y entra perfectamente con la misma contraseña

version: "2.1"
services:
  amule:
    image: ngosang/amule
    container_name: amule
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Madrid 
      # GUI_PWD and WEBUI_PWD are only used in initial setup
      - GUI_PWD=1234
      - WEBUI_PWD=1234
      - MOD_AUTO_RESTART_ENABLED=true
      - MOD_AUTO_RESTART_CRON=0 6 * * *
      - MOD_AUTO_SHARE_ENABLED=false
      - MOD_AUTO_SHARE_DIRECTORIES=/incoming;/my_movies
      - MOD_FIX_KAD_GRAPH_ENABLED=true
    ports:
      - "9090:4711" # web ui
      - "4712:4712" # remote gui, webserver, cmd ...
      - "4662:4662" # ed2k tcp
      - "4665:4665/udp" # ed2k global search udp (tcp port +3)
      - "4672:4672/udp" # ed2k udp
    volumes:
      - /home/pi/.amule:/home/amule/.aMule 
      - /home/pi/Downloads:/incoming  
      - /tmp:/temp 
    restart: unless-stopped

cant access webui raspberry pi 4

Hi, I am trying to run your container on a raspberry pi 4, but I cant login to the webui and the logs show that it's stuck in a loop. I tried deleting all files and retrying but it had no effect. I started the compose file with docker compose up -d.

This is my docker-compose.yml:
docker-compose.txt

portainer logs:
_amule_logs.txt

Kad nodes graph is missing

Hi, first of all thank you very much for your docker image. I am using it on a rpi and it works wonderfully. Hope you can continue the updates when they come out.

I have only one issue, that the KAD graph seems missing (even though aMule is connected to KAD with high ID). I attach a screenshot to explain it better:
image

The same graph is missing when you go to the "Stats" page (but all the other graphs like "Connection Counts", "Downloads" and "Uploads" appear instead).

Do you know how to fix this?

KAD connection firewalled

Hi,

I've opened the ports in my router as described in the readme but I'm not able to get a KAD connection that is not firewalled.
I'm only using KAD, no Server.
What can I do to debug?
I'm in Docker Desktop for OSX Catalina.

Thanks

[Enhancement] Add Stop file button

This is a enhancement suggestion. Let's say you're downloading a series of files with very few sources and you know that all these files shares the same complete source/sources. If you pause all the files in order to download them one by one the sources that have been found previously remain "trapped" as A4AF sources; so you have to be able to stop the files in such a way as to "unlock" the sources that so could be contacted for another file.

Another reason may be, always in relation to the previous situation, if you want to know if a file has or not at least one complete source. If a complete source is stucked as A4AF source in another queue you can't contact it and so the file is shown as incomplete when instead it is not...

Of course these are only some of many reasons why someone would want to be able to stop and not pause a file.

amule not using my dockercompose.yml configuration?

I'm using Ubuntu server 22.04.3 LTS.

This is the content of my dockercompose.yml and obviously there is a mistake because amule places the downloaded files in my home (/home/itook/.aMule/Incoming) and I also get lowID and firewalled Kad.

---
version: "2.1"
services:
  amule:
    image: ngosang/amule
    container_name: amule
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Madrid
      - GUI_PWD=my-password
      - WEBUI_PWD=my-password
      - MOD_AUTO_RESTART_ENABLED=true
      - MOD_AUTO_RESTART_CRON=0 6 * * *
      - MOD_AUTO_SHARE_ENABLED=false
      - MOD_AUTO_SHARE_DIRECTORIES=/almacen1/ALEJANDRO/DESCARGAS/AMULE/Incoming
      - MOD_FIX_KAD_GRAPH_ENABLED=true
      - MOD_FIX_KAD_BOOTSTRAP_ENABLED=true
    ports:
      - "4711:4711" # web ui
      - "4712:4712" # remote gui, webserver, cmd ...
      - "59000:59000" # ed2k tcp
      - "59003:59003/udp" # ed2k global search udp (tcp port +3)
      - "4672:4672/udp" # ed2k udp
    volumes:
      - /home/itook/.aMule
      - /almacen1/ALEJANDRO/DESCARGAS/AMULE/Incoming
      - /almacen1/ALEJANDRO/DESCARGAS/AMULE/Temp
    restart: unless-stopped

The ports 59000 and 59003 are open.

The log after runing docker compose up --build using the referenced configuration:

 ✔ Container amule  Created                                      0.0s 
Attaching to amule
amule  | Group 1000 already exists. Won't be created.
amule  | Group amule with GID 1000 will be used as amule group.
amule  | User 1000 already exists. Won't be added.
amule  | User amule with UID 1000 will be used as amule user.
amule  | /home/amule/.aMule/amule.conf file found. Using existing configuration.
amule  | /home/amule/.aMule/remote.conf file found. Using existing configuration.
amule  | [MOD_AUTO_RESTART] aMule will be restarted automatically (cron 0 6 * * *)... You can disable this mod with MOD_AUTO_RESTART_ENABLED=false
amule  | [MOD_FIX_KAD_GRAPH] Removing Kad stats graph to fix potential crash... You can disable this mod with MOD_FIX_KAD_GRAPH_ENABLED=false
amule  | [MOD_FIX_KAD_BOOTSTRAP] File nodes.dat already exist. You can disable this mod with MOD_FIX_KAD_BOOTSTRAP_ENABLED=false
amule  |  2023-11-18 20:55:37: Logging to stdout enabled
amule  |  2023-11-18 20:55:37: Initialising aMuleD 2.3.3 compiled with wxBase(GTK2) v3.2.2 and Boost 1.82
amule  |  2023-11-18 20:55:37: Checking if there is an instance already running...
amule  |  2023-11-18 20:55:37: No other instances are running.
amule  |  2023-11-18 20:55:37: Creditfile loaded, 0 clients are known
amule  |  2023-11-18 20:55:37: *** TCP socket (ECServer) listening on 0.0.0.0:4712
amule  |  2023-11-18 20:55:37: Created Server UDP-Socket at port 4665
amule  |  2023-11-18 20:55:37: ListenSocket: Ok.
amule  |  2023-11-18 20:55:37: Created Client UDP-Socket at port 4672
amule  |  2023-11-18 20:55:37: Loading server.met file: /home/amule/.aMule/server.met
amule  | !2023-11-18 20:55:37: 9 servers in server.met found
amule  |  2023-11-18 20:55:37: Loading temp files from /temp.
amule  |  2023-11-18 20:55:37: All PartFiles Loaded.
amule  |  2023-11-18 20:55:37: No part files found
amule  |  2023-11-18 20:55:37: No shareable files found in directory: /incoming
amule  |  2023-11-18 20:55:37: Found 0 known shared files
amule  | !2023-11-18 20:55:37: web server running on pid 43
amule  |  2023-11-18 20:55:37: amuled: OnInit - starting timer
amule  |  2023-11-18 20:55:37: Asio thread 1 started
amule  |  2023-11-18 20:55:37: Asio thread 2 started
amule  |  2023-11-18 20:55:37: Asio thread 3 started
amule  |  2023-11-18 20:55:37: Asio thread 4 started
amule  |  2023-11-18 20:55:37: Loading IP filters 'ipfilter.dat' and 'ipfilter_static.dat'.
amule  |  2023-11-18 20:55:37: New external connection accepted
amule  |  2023-11-18 20:55:37: Connecting client: aMuleweb 2.3.3
amule  |  2023-11-18 20:55:37: Access granted.
amule  |  2023-11-18 20:55:37: Loaded 226324 IP-ranges from '/home/amule/.aMule/ipfilter.dat'.
amule  |  2023-11-18 20:55:37: Loaded 0 IP-ranges from '/home/amule/.aMule/ipfilter_static.dat'.
amule  |  2023-11-18 20:55:37: IP filter is ready
amule  | !2023-11-18 20:55:37: Connecting
amule  |  2023-11-18 20:55:37: Connecting to eMule Security (5.45.85.226 - 5.45.85.226:6584) using protocol obfuscation.
amule  |  2023-11-18 20:55:37: Read 158 Kad contacts
amule  | !2023-11-18 20:55:37: Kad started.
amule  |  2023-11-18 20:55:37: Connected to eMule Security (5.45.85.226:6584)
amule  |  2023-11-18 20:55:37: 20:55:37: Error: Failed to unregister descriptor 22 from epoll descriptor 16 (error 2: No such file or directory)
amule  |  2023-11-18 20:55:37: 20:55:37: Error: Failed to unregister descriptor 22 from epoll descriptor 16 (error 2: No such file or directory)
amule  |  2023-11-18 20:55:37: Successfully updated ipfilter.dat
amule  |  2023-11-18 20:55:37: Loading IP filters 'ipfilter.dat' and 'ipfilter_static.dat'.
amule  |  2023-11-18 20:55:38: Loaded 226324 IP-ranges from '/home/amule/.aMule/ipfilter.dat'.
amule  |  2023-11-18 20:55:38: Loaded 0 IP-ranges from '/home/amule/.aMule/ipfilter_static.dat'.
amule  |  2023-11-18 20:55:38: IP filter is ready
amule  |  2023-11-18 20:55:38: Connecting to eMule Sunrise (176.123.5.89 - 176.123.5.89:4725) using protocol obfuscation.
amule  |  2023-11-18 20:55:38: Connected to eMule Sunrise (176.123.5.89:4725)
amule  | !2023-11-18 20:55:39: Kad stopped.
amule  | !2023-11-18 20:55:39: Connected to Kad (firewalled)
amule  |  2023-11-18 20:55:47: WARNING: eMule Security (5.45.85.226:6584) - NG : You have a lowid. Please review your network config and/or your settings.
amule  | !2023-11-18 20:55:47: Connection established on: eMule Security
amule  | !2023-11-18 20:55:47: Connected to eMule Security with LowID
amule  |  2023-11-18 20:55:47: New clientid is 384672
amule  | !2023-11-18 20:55:47: WARNING: You have received Low-ID!
amule  |  2023-11-18 20:55:47: 	Most likely this is because you're behind a firewall or router.
amule  |  2023-11-18 20:55:47: 	For more information, please refer to http://wiki.amule.org
amule  |  2023-11-18 20:55:47: ServerMessage: server version 17.15 (lugdunum)
amule  |  2023-11-18 20:55:47: ServerMessage: Welcome to eMule Security! <> www.emule-security.org
amule  |  2023-11-18 20:55:47: ServerMessage: Download Safe Serverlist > http://www.emule-security.org/serverlist/
amule  |  2023-11-18 20:55:47: ServerMessage: IP-filter > http://www.emule-security.org/e107_plugins/faq/faq.php?0.cat.2.1
amule  |  2023-11-18 20:55:47: ServerMessage: nodes.dat > http://www.emule-security.org/e107_plugins/faq/faq.php?0.cat.6.6
amule  |  2023-11-18 20:55:47: ServerMessage: Ip-To-Country database> http://www.emule-security.org/e107_plugins/faq/faq.php?0.cat.7.10
amule  |  2023-11-18 20:55:47: ServerMessage: eMule MODs > http://www.emule-security.org/modb/
amule  |  2023-11-18 20:55:47: ServerMessage: Disclaimer: This server is only indexing file-hashes, and no contains any files,
amule  |  2023-11-18 20:55:47: ServerMessage: not directly involved in the exchange of files between users of p2p-network.
amule  |  2023-11-18 20:55:47: ServerMessage: Administration of server is not responsible for the contents of files

Why is amule searching its config file in /home/amule/.aMule/amule.conf? There's only one user in my system and it's not "amule" so this folder does not exist nor the user amule. The lowID and the firewalled Kad is a consequence of this issue since amule is using its default config and not using the open ports in my router (59000 tcp and 59003 udp).

As you can already imagine by now, I'm not an experienced Docker user.

Webui crash

Sorry to bother you again, but I've to reopen this topic because finally I managed to understand the cause of the problem. I had gave up on using aMule on the NAS, so I after few days I installed windows and eMule MorphXT on the NAS. When I added the downloads the same thing happens : the ui was freezing, the software became unresponsive for quite a bit and even the connection got stuck in both direction no download an no more upload.
I added 15 files for a total of 180GB and I noticed that the HDD utilization immediately spikes at 100% and stays at that level quite a bit, as soon as the HDD turns at normal operation level the ui works again.

Keep it short, the problem is the "alloc full disk space for .parts file". In the MorphXT there's the option "create new file .part as sparse" if I active that option the problem is gone...

So far so good, however I don't know how aMule manages .part files; I mean for sure that's no such option in the settings. Maybe there's a way to active that through the amule.conf file ? Or maybe the sparse option is the default behavior, so I simply could not flag the "alloc full..." option ? Do you happen to know something about this ?

Server changes at each auto restart from "default" one

I would like to connect to a specific server (the one with most files). This is achieved when I start the container. All good until now. However, when the auto restart happens, aMule connects to another server. Is there a way to force aMule to connect only to a specific server (the one I had chosen in the beginning). I know this is a very specific aMule question but wanted to try if you had an idea since official aMule support is not very responsive.

Writing buffer option?

I've noticed that the HDD activity is quite high when downloading anything, even at low speeds, much higher than any torrent download. Could it be a writing buffer issue? is there any option or way to have such buffer by changing amule configuration or even the container?

Regards and many thanks for the image.

Missing ports

Hi there!

I'm running a docker image using this docker-compose template:

version: "2.1"
services:
  amule:
    image: ngosang/amule
    container_name: amule
    environment:
      - PUID=1000
      - PGID=1000
      - TZ=Europe/Madrid
      - GUI_PWD=XXXX
      - WEBUI_PWD=XXX
      - MOD_AUTO_RESTART_ENABLED=true
      - MOD_AUTO_RESTART_CRON=0 6 * * *
      - MOD_AUTO_SHARE_ENABLED=false
      - MOD_AUTO_SHARE_DIRECTORIES=/incoming;/my_movies
      - MOD_FIX_KAD_GRAPH_ENABLED=true
      - MOD_FIX_KAD_BOOTSTRAP_ENABLED=true
    ports:
      - "4711:4711" # web ui
      - "4712:4712" # remote gui, webserver, cmd ...
      - "4662:4662" # ed2k tcp
      - "4665:4665/udp" # ed2k global search udp (tcp port +3)
      - "4672:4672/udp" # ed2k udp
    volumes:
      - /mnt/aMule/config:/home/amule/.aMule
      - /mnt/Donwloads:/incoming
      - /mnt/Temp:/temp
    restart: unless-stopped

The thing is that the container is running but I can't reach the webui. Portainer doesn't show the ports. If I restart the containers they appear for some time and then they drop.

What am I missing out?

Thank you for your help.

EDIT:

It seems that the container is restarting forever.

The logs say too: chown: /incoming: Operation not permitted

MODFIX: Variable Nick

Buenas,

Lo primero agradecer el port y su magnifico funcionamiento, un mod sencillo que considero interesante sería poder añadir la variable Nick en los parametros de creación del servicio.

Un saludo

Fails to load due to sudo giving up errors about time of the day

Everything works until the main executable is called with sudo on last line of entrypoint script

sudo -H -u '#'"${AMULE_UID}" sh -c "amuled -c ${AMULE_HOME} -o"

that gives this error:

sudo: unable to get time of day: Operation not permitted
sudo: error initializing audit plugin sudoers_audit

Include an option to share folders recursively

aMule does not share folder recursively. In the desktop client you can include sub-folders easily but that is not possible in the Web UI / Remote Client.
This feature request is to add a new environment variable with a list of paths. In the Docker entry-point will be some code to add all the sub-folders in those paths to the aMule configuration before aMule starts.

whats the proper way to mount "my_movies" aka extra share directories?

the container works fine with /incoming just it doesn't detect any extra share directories

tried 1

mkdir -vp /media/alfa/amule/{conf,tmp,incoming}
mkdir -vp /media/alfa/amule/incoming/my_movies # path a. not sure which path so i did both
mkdir -vp /media/alfa/amule/my_movies # path b
wget -P /media/alfa/amule/conf https://upd.emule-security.org/nodes.dat # add Kad nodes
podman run -d \
  --name=amule \
  -e PUID=1000 \
  -e PGID=1000 \
  -e TZ=America/Los_Angeles \
  -e GUI_PWD=0123456789 \
  -e WEBUI_PWD=0123456789 \
  -e MOD_AUTO_SHARE_ENABLED=true \
  -e MOD_AUTO_SHARE_DIRECTORIES='/incoming;/my_movies' \
  -p 4711:4711 \
  -p 4712:4712 \
  -p 4662:4662 \
  -p 4665:4665/udp \
  -p 4672:4672/udp \
  -v /media/alfa/amule/conf:/home/amule/.aMule \
  -v /media/alfa/amule/incoming:/incoming \
  -v /media/alfa/amule/tmp:/temp \
  -v /media/bravo/unmanic/media/library:/incoming/my_movies \
  --restart unless-stopped \
  ngosang/amule

try 2
-v /media/bravo/unmanic/media/library:/my_movies \


P.S i had to use one of these single quotes, double quotes, or backslash escapes around the directories else it complains about directories does not exist

  -e MOD_AUTO_SHARE_DIRECTORIES='/incoming;/my_movies' \
  -e MOD_AUTO_SHARE_DIRECTORIES="/incoming;/my_movies" \
  -e MOD_AUTO_SHARE_DIRECTORIES=/incoming\;/my_movies \

Error: requires at least 1 arg(s), only received 0
-bash: /my_movies: No such file or directory

Amuleweb stops at random

No matter what amuleweb stops randomly with the logs: Command ''amuleweb' '--amule-config-file=/home/amule/.aMule/amule.conf''..... has finished with status code '-6'

This can happened once a day as well as 10 times in an hour, I wasn't able to understand what causes this problem; however it seems a long known problem 'cause I found old threads around the web that mention this behavior, so I'm guessing that's an old problem that has never been fixed. Anyway, let's move on. Since aMule keeps working properly, I'm wondering if it could be possible to write a script that checks if amuleweb is stopped and if needed restarts it or maybe add a modification that does this, just like the kad graph fix and the others...

Auto share mod not working after cron restarts amule

Hi, I have noticed that if I enable the auto restart cron and auto share mod to recursively share all sub directories under the incoming dir it works until the cron restarts amule, then the auto share is not applied anymore

Amuleweb stops at random

No matter what amuleweb stops randomly with the logs: Command ''amuleweb' '--amule-config-file=/home/amule/.aMule/amule.conf''..... has finished with status code '-6'

This can happened once a day as well as 10 times in an hour, I wasn't able to understand what causes this problem; however it seems a long known problem 'cause I found old threads around the web that mention this behavior, so I'm guessing that's an old problem that has never been fixed. Anyway, let's move on. Since aMule keeps working properly, I'm wondering if it could be possible to write a script that checks if amuleweb is stopped and if needed restarts it or maybe add a modification that does this, just like the kad graph fix and the others...

Can't download server.met

Any idea why?

2022-05-10 00:24:51: Logging to stdout enabled
2022-05-10 00:24:51: Initialising aMuleD 2.3.3 compiled with wxBase(GTK2) v3.0.4 and Boost 1.77
2022-05-10 00:24:51: Checking if there is an instance already running...
2022-05-10 00:24:51: No other instances are running.
2022-05-10 00:24:51: *** TCP socket (ECServer) listening on 0.0.0.0:4712
2022-05-10 00:24:51: Created Server UDP-Socket at port 4665
2022-05-10 00:24:51: ListenSocket: Ok.
2022-05-10 00:24:51: Created Client UDP-Socket at port 4672
2022-05-10 00:24:51: Loading server.met file: /home/amule/.aMule/server.met
2022-05-10 00:24:51: Server.met file not found!
2022-05-10 00:24:51: Loading temp files from /temp.
2022-05-10 00:24:51: All PartFiles Loaded.
2022-05-10 00:24:51: No part files found
2022-05-10 00:24:51: No shareable files found in directory: /incoming
2022-05-10 00:24:51: Found 0 known shared files
!2022-05-10 00:24:51: web server running on pid 45
2022-05-10 00:24:51: amuled: OnInit - starting timer
2022-05-10 00:24:51: Asio thread 1 started
2022-05-10 00:24:51: Asio thread 3 started
2022-05-10 00:24:51: Asio thread 2 started
2022-05-10 00:24:51: Asio thread 4 started
2022-05-10 00:24:51: Loading IP filters 'ipfilter.dat' and 'ipfilter_static.dat'.
2022-05-10 00:24:51: Loaded 0 IP-ranges from '/home/amule/.aMule/ipfilter.dat'.
2022-05-10 00:24:51: Loaded 0 IP-ranges from '/home/amule/.aMule/ipfilter_static.dat'.
2022-05-10 00:24:51: IP filter is ready
!2022-05-10 00:24:51: Connecting
!2022-05-10 00:24:51: No valid servers to which to connect found in server list
!2022-05-10 00:24:51: No contacts found, please bootstrap, or download a nodes.dat file.
!2022-05-10 00:24:51: Kad started.
!2022-05-10 00:24:51: HTTP: WARNING: Void response on stream creation
!2022-05-10 00:24:51: HTTP: WARNING: Void response on stream creation
2022-05-10 00:24:51: New external connection accepted
2022-05-10 00:24:51: Connecting client: aMuleweb 2.3.3
!2022-05-10 00:24:51: Invalid response from HTTP download server
!2022-05-10 00:24:51: Failed to download server.met from http://upd.emule-security.org/server.met
!2022-05-10 00:24:51: Failed to download ipfilter.dat from http://upd.emule-security.org/ipfilter.zip
!2022-05-10 00:24:51: Invalid response from HTTP download server

Web UI becomes unresponsive + the download slows down the upload

When I add several downloads, like let's say 10 files, then the Web UI becomes unresponsive more and more minute after minute until it takes more than 2 minutes to loads or to show a different UI section. In the worst cases it crashes completely and becomes available again after some time. That's for sure related to the number of files in the download queue because if I stop all of them the Web UI works as normal and even if I download less files at the same time the problem disappears.
Second point if the download is active the upload slows down a lot, it almost disappears; when the download is stopped the upload return to its full speed, within the max cap value of course.

By the way I'm on Unraid OS and I've activated all the mods like the fix for the kad graph and so on...

Compose file upgrade

Hi,
is there any plan to upgrade the compose file to version 3?

Best regards,

Version 2.3.3-12 unreachable via aMuledGUI

As in the subject, after upgrading to the latest 2.3.3-12 version I'm not able to connect to the container via aMuledGUI... on the other hand, downgrading to the old 2.3.3-11 version fixes the issue.

Iade

Kad connection error

Seems that Kad network is unable to connect. Everything else is OK with the ed2k server connected and high. The only information in the logs referring to Kad is this:

Kad started.

The fix for the graph is activated.

Search fails with: "ServerUDP: Got server search reply with additional packet."

Just wanted to tryout amule to find a rare german movie.
It connects with High ports but all the searches fail, even for very generic search terms.

2024-01-07 09:24:02: Connecting to eMule Security 2 (...) using protocol obfuscation.
2024-01-07 09:24:03: Connected to eMule Security 2 (...:5687)
!2024-01-07 09:24:03: Connection established on: eMule Security
!2024-01-07 09:24:03: Connected to eMule Security with HighID
2024-01-07 09:24:03: New clientid is 639616***
2024-01-07 09:24:03: ServerMessage: server version 17.15 (lugdunum)
2024-01-07 09:24:03: ServerMessage: Welcome to eMule Security! <> www.emule-security.org
2024-01-07 09:24:03: ServerMessage: Download Safe Serverlist > http://www.emule-security.org/serverlist/
2024-01-07 09:24:03: ServerMessage: IP-filter > http://www.emule-security.org/e107_plugins/faq/faq.php?0.cat.2.1
2024-01-07 09:24:03: ServerMessage: nodes.dat > http://www.emule-security.org/e107_plugins/faq/faq.php?0.cat.6.6
2024-01-07 09:24:03: ServerMessage: Ip-To-Country database> http://www.emule-security.org/e107_plugins/faq/faq.php?0.cat.7.10
2024-01-07 09:24:03: ServerMessage: eMule MODs > http://www.emule-security.org/modb/
2024-01-07 09:24:03: ServerMessage: Disclaimer: This server is only indexing file-hashes, and no contains any files,
2024-01-07 09:24:03: ServerMessage: not directly involved in the exchange of files between users of p2p-network.
2024-01-07 09:24:03: ServerMessage: Administration of server is not responsible for the contents of files
2024-01-07 09:24:03: ServerMessage: shared by connected to the server users. Please do not share
2024-01-07 09:24:03: ServerMessage: copyrighted material, DRM protected media, viruses or other harmful files!
!2024-01-07 09:24:03: Kad stopped.
!2024-01-07 09:24:03: Connected to Kad (firewalled)
!2024-01-07 09:24:25: Connected to Kad (ok)
!2024-01-07 09:25:56: ServerUDP: Got server search reply with additional packet.

temp and incoming folder permission

Hi,
running from Windows 11 on a Virtualbox Ubuntu WM.

I have the NTFS R: drive shared on the WM and the folder are writable.

here's my docker compose:

version: '3.3'
services:
    amule:
        image: ngosang/amule
        container_name: amule
        environment:
            - PUID=1000
            - PGID=1000
            - TZ=Europe/Rome
            - GUI_PWD=bazzucco04021985.cristian!
            - WEBUI_PWD=bazzucco04021985.cristian!
            - MOD_AUTO_RESTART_ENABLED=true
            - MOD_AUTO_RESTART_CRON=0 6 * * *
            - MOD_AUTO_SHARE_ENABLED=true
            - MOD_AUTO_SHARE_DIRECTORIES=/incoming;/my_movies
            - MOD_FIX_KAD_GRAPH_ENABLED=true
            - WEBUI_TEMPLATE=AmuleWebUI-Reloaded
        volumes:
            - ~/docker/amule/config:/home/amule/.aMule
            - /mnt/R/Downloads/aMule/incoming:/incoming
            - /mnt/R/Downloads/aMule/tmp:/temp
        network_mode: 'container:openvpn-client'
        restart: 'unless-stopped'

When starting amule I get this error for temp folder (same for incoming after)

2022-10-06 23:49:16: ERROR: Error accessing directory. Permissions on the temp directory too strict!
!2022-10-06 23:49:16: aMule cannot proceed. To fix this, you must set read/write/exec
!2022-10-06 23:49:16: permissions for the folder '/temp'
!2022-10-06 23:49:16: Attempting to use default directory at location 
!2022-10-06 23:49:16: '/home/amule/.aMule/Temp'.

trying to enter the container from terminal and making a dir on both temp and incoming folder works..

Can't get it to work with NPM reverse proxy

I have tens of services working find, but I can't get Amule to work with NginxReverse Proxy Manager. Whatever I set, I always get "502 Bad Gateway". Any ideas what could be wrong here? I tried various ports already (also set in remote.conf).

problem with locale

Hello

I am using your Docker image with Debian on Raspberry Pi 4 (arm64). The system is configured with es_ES.UTF-8.

But the problem is that when I download a file with Spanish words (á, ñ, etc ...) in the client's amule, I see the file correct, but when I do "ls" to access the directory with filezilla I see (for example ):

el.dia.de.mañana.(2010).mkv (the name of the file on the amule client) -> el.dia.de.ma\03ana.(2010).mkv (with filezilla client)

Another example is that I use flexget to find the original name and copy another directory, but when it looks for the information and reaches the sample file, the system breaks because it indicates that it has found strange characters (\03).

On the other hand, if I use the original docker the synopsis8 (which indicates that it has inspired you) also on a Raspberry Pi 4 (armhf) work perfectly and configure with same locale ( es_ES.UTF-8 ).

Do you know where the problem can come from? I comment on it, because I have tried (inside the container) to install the package "locales" and configure it as es_ES.UTF-8 but the problem is still not solved

Thanks a lot

Bug? LowID warning and Kad Firewalled

 > eD2k: Connected to eMule Security [5.45.85.226:6584] with LowID
 > Kad: Connected (firewalled)

I try disabling all firewall programs (ufw)
I manually port forward on my router also
TCP 4662
UDP 4665/4672


Seems like there might be an issue with the container itself? When i use amule program on my desktop (non-container) it works fine, i dont get firewalled or LowID, didnt even need to open any ports, just used UPnP options for port forwarding

I can still download and search just fine with this container but i guess is in a limited scope.
Just wanted to make sure is not just me having this issue.

Upload limitation. does not use all the bandwidth

Hi friend,
I know it's not a problem with your container.
But, I don't get faster upload speeds. I have 15-20mb/s of line to upload.
Do you know any trick? Thanks!
Captura de Pantalla 2022-06-15 a las 15 32 10
My setup:
image

[eMule] AppVersion=2.3.3 Nick=http://www.aMule.org QueueSizePref=50 MaxUpload=40000 MaxDownload=40000 SlotAllocation=1000 Port=5662 UDPPort=5672 UDPEnable=1 Address= Autoconnect=1 MaxSourcesPerFile=100 MaxConnections=2000 MaxConnectionsPerFiveSeconds=30 RemoveDeadServer=0 DeadServerRetry=3 ServerKeepAliveTimeout=0 Reconnect=1 Scoresystem=1 Serverlist=0 AddServerListFromServer=0 AddServerListFromClient=0 SafeServerConnect=0 AutoConnectStaticOnly=0 UPnPEnabled=0 UPnPTCPPort=50000 SmartIdCheck=1 ConnectToKad=1 ConnectToED2K=1 TempDir=/temp IncomingDir=/incoming ICH=0 AICHTrust=0 CheckDiskspace=0 MinFreeDiskSpace=0 AddNewFilesPaused=0 PreviewPrio=0 ManualHighPrio=0 StartNextFile=0 StartNextFileSameCat=0 StartNextFileAlpha=0 FileBufferSizePref=16 DAPPref=1 UAPPref=1 AllocateFullFile=1 OSDirectory=/home/amule/.aMule OnlineSignature=0 OnlineSignatureUpdate=5 EnableTrayIcon=0 MinToTray=0 ConfirmExit=1 StartupMinimized=0 3DDepth=10 ToolTipDelay=1 ShowOverhead=0 ShowInfoOnCatTabs=1 VerticalToolbar=0 GeoIPEnabled=1 VideoPlayer= StatGraphsInterval=3 statsInterval=30 DownloadCapacity=45000 UploadCapacity=45000 StatsAverageMinutes=15 VariousStatisticsMaxValue=100 SeeShare=2 FilterLanIPs=1 ParanoidFiltering=1 IPFilterAutoLoad=1 IPFilterURL=http://upd.emule-security.org/ipfilter.zip FilterLevel=127 IPFilterSystem=0 FilterMessages=1 FilterAllMessages=0 MessagesFromFriendsOnly=0 MessageFromValidSourcesOnly=1 FilterWordMessages=0 MessageFilter= ShowMessagesInLog=1 FilterComments=0 CommentFilter= ShareHiddenFiles=0 AutoSortDownloads=0 NewVersionCheck=0 AdvancedSpamFilter=1 MessageUseCaptchas=1 Language= SplitterbarPosition=75 YourHostname= DateTimeFormat=%A, %x, %X AllcatType=0 ShowAllNotCats=0 SmartIdState=1 DropSlowSources=0 KadNodesUrl=http://upd.emule-security.org/nodes.dat Ed2kServersUrl=http://upd.emule-security.org/server.met ShowRatesOnTitle=0 GeoLiteCountryUpdateUrl=https://dl.miyuru.lk/geoip/maxmind/country/maxmind.dat.gz StatsServerName=Shorty ED2K stats StatsServerURL=http://ed2k.shortypower.dyndns.org/?hash= CreateSparseFiles=1 Notifications=0 ShowVersionOnTitle=0 [Browser] OpenPageInTab=1 CustomBrowserString= [Proxy] ProxyEnableProxy=0 ProxyType=0 ProxyName= ProxyPort=1080 ProxyEnablePassword=0 ProxyUser= ProxyPassword= [ExternalConnect] UseSrcSeeds=0 AcceptExternalConnections=1 ECAddress= ECPort=4712 ECPassword=2abfffa8be2186dd4755bc807a93027d UPnPECEnabled=0 ShowProgressBar=1 ShowPercent=1 UseSecIdent=1 IpFilterClients=1 IpFilterServers=1 TransmitOnlyUploadingClients=0 [WebServer] Enabled=1 Password=2abfffa8be2186dd4755bc807a93027d PasswordLow= Port=4711 WebUPnPTCPPort=50001 UPnPWebServerEnabled=0 UseGzip=1 UseLowRightsUser=0 PageRefreshTime=120 Template=AmuleWebUI-Reloaded Path=amuleweb [GUI] HideOnClose=0 [Razor_Preferences] FastED2KLinksHandler=1 [SkinGUIOptions] Skin= [Statistics] MaxClientVersions=0 [Obfuscation] IsClientCryptLayerSupported=1 IsCryptLayerRequested=0 IsClientCryptLayerRequired=0 CryptoPaddingLenght=254 CryptoKadUDPKey=138123518 [PowerManagement] PreventSleepWhileDownloading=0 [UserEvents] [UserEvents/DownloadCompleted] CoreEnabled=0 CoreCommand= GUIEnabled=0 GUICommand= [UserEvents/NewChatSession] CoreEnabled=0 CoreCommand= GUIEnabled=0 GUICommand= [UserEvents/OutOfDiskSpace] CoreEnabled=0 CoreCommand= GUIEnabled=0 GUICommand= [UserEvents/ErrorOnCompletion] CoreEnabled=0 CoreCommand= GUIEnabled=0 GUICommand= [HTTPDownload] URL_1=http://upd.emule-security.org/ipfilter.zip

Searching for content shows no results

I have noticed that after I have aMule running on for some time on my Raspberry Pi 4, the searching function seems broken. Searching from both the gui and web interface delivers no results for whatever thing is entered. I have to restart the container to get the function working again. When searching delivers no results, I do not see anything suspicious on the internal aMule log page. Additionally, files download/upload does not seem to be affected.

config pwd but can't login on docker

I having a problem in docker
docker run -d
--name=amule
-e PUID=0
-e PGID=0
-e GUI_PWD=123
-e WEBUI_PWD=123
...
I can't login using 123.
What is the reason?

Triple file? (QNAP)

I installed the product on a qnap following the instructions.
All right, connect and download.
Ka files seem to be saved in 3 locations:

/share/MD0_DATA/Container/container-station-data/lib/docker/overlay2/a4bb143a517b84815e451a4e73bdb9af28cda33ed1f4b9188bf95d1dd31eda0e/diff/incoming

/share/MD0_DATA/Container/container-station-data/lib/docker/overlay2/a4bb143a517b84815e451a4e73bdb9af28cda33ed1f4b9188bf95d1dd31eda0e/merged/incoming

/share/MD0_DATA/Container/container-station-data/lib/docker/overlay2/a4bb143a517b84815e451a4e73bdb9af28cda33ed1f4b9188bf95d1dd31eda0e/diff/incoming

What can I check?
Thank you

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.