• 1 Post
  • 390 Comments
Joined 1 year ago
cake
Cake day: June 12th, 2023

help-circle









  • Doing more digging, I captured checksums of all files that get created by the i2p container, with

    find i2p* -type f -exec md5 {} + > 1sum # After starting container

    and

    find i2p* -type f -exec md5 {} + > 2sum # After restarting container

    Comparing the files with diff -y 1sum 2sum, I noticed this file was the only one whose checksum changed:

    MD5 (i2phome/router.ping) = 95fd0fa14b084cf019f2dd9e0884aa1 | MD5 (i2phome/router.ping) = f4b060ae4f789f7d24f2851c06597c4

    EDIT:

    Preserving this file outside of the volume directory and copying it back in after the container restarts allows the web console to function as expected.

    EDIT 2:

    To take it a step further, I’m mounting it read only into the container at runtime like this:

    - ./router.ping:/i2p/.i2p/:ro

    which is sort of a hack, but I think I can live with it.


  • Yeah, I looked at the logs originally, and would’ve posted them had they been relevant. The problem is, the logs do not differ between a working and non-working container. They’re literally this, before and after a restart:

    Starting I2P
    [startapp] Running in container
    [startapp] Running in docker network
    [startapp] setting reachable IP to container IP 172.26.0.2
    Starting I2P 2.5.2-0
    OpenJDK 64-Bit Server VM warning: You have loaded library /tmp/i2p-JtRKWUcL.tmp/libjbigi.so which might have disabled stack guard. The VM will try to fix the stack guard now.
    It's highly recommended that you fix the library with 'execstack -c <libfile>', or link it with '-z noexecstack'.