OdinEidolon

Members
  • Posts

    28
  • Joined

  • Last visited

Posts posted by OdinEidolon

  1. I am having problems with the `speedtest-tracker` docker.

    I get a 500 error when trying to access the UI. The logs are attached below. Any idea about what's going on?

     

    [s6-init] making user provided files available at /var/run/s6/etc...exited 0.
    [s6-init] ensuring user provided files have correct perms...exited 0.
    [fix-attrs.d] applying ownership & permissions fixes...
    [fix-attrs.d] done.
    [cont-init.d] executing container initialization scripts...
    [cont-init.d] 01-envfile: executing...
    [cont-init.d] 01-envfile: exited 0.
    [cont-init.d] 10-adduser: executing...
    usermod: no changes
    
    -------------------------------------
    _ ()
    | | ___ _ __
    | | / __| | | / \
    | | \__ \ | | | () |
    |_| |___/ |_| \__/
    
    
    Brought to you by linuxserver.io
    -------------------------------------
    
    To support LSIO projects visit:
    https://www.linuxserver.io/donate/
    -------------------------------------
    GID/UID
    -------------------------------------
    
    User uid: 911
    User gid: 911
    -------------------------------------
    
    [cont-init.d] 10-adduser: exited 0.
    [cont-init.d] 20-config: executing...
    [cont-init.d] 20-config: exited 0.
    [cont-init.d] 30-keygen: executing...
    using keys found in /config/keys
    [cont-init.d] 30-keygen: exited 0.
    [cont-init.d] 40-config: executing...
    Starting 2019/12/30, GeoIP2 databases require personal license key to download. Please manually download/update the GeoIP2 db and save as /config/geoip2db/GeoLite2-City.mmdb
    [cont-init.d] 40-config: exited 0.
    [cont-init.d] 50-speedtest: executing...
    Copying latest site files to config
    Database file exists
    Env file exists
    Updating packages
    fetch http://dl-cdn.alpinelinux.org/alpine/v3.13/main/x86_64/APKINDEX.tar.gz
    fetch http://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz
    (1/1) Installing composer (2.0.13-r0)
    Executing busybox-1.32.1-r6.trigger
    OK: 161 MiB in 175 packages
    Installing dependencies from lock file (including require-dev)
    Verifying lock file contents can be installed on current platform.
    Nothing to install, update or remove
    Package fzaninotto/faker is abandoned, you should avoid using it. No replacement was suggested.
    Generating optimized autoload files
    > Illuminate\Foundation\ComposerScripts::postAutoloadDump
    > @php artisan package:discover --ansi
    Discovered Package: [32mbarryvdh/laravel-ide-helper[39m
    Discovered Package: [32mfacade/ignition[39m
    Discovered Package: [32mfideloper/proxy[39m
    Discovered Package: [32mfruitcake/laravel-cors[39m
    Discovered Package: [32mhenrywhitaker3/laravel-actions[39m
    Discovered Package: [32mlaravel-notification-channels/telegram[39m
    Discovered Package: [32mlaravel/slack-notification-channel[39m
    Discovered Package: [32mlaravel/tinker[39m
    Discovered Package: [32mlaravel/ui[39m
    Discovered Package: [32mnesbot/carbon[39m
    Discovered Package: [32mnunomaduro/collision[39m
    Discovered Package: [32mtymon/jwt-auth[39m
    [32mPackage manifest generated successfully.[39m
    90 packages you are using are looking for funding.
    Use the `composer fund` command to find out more!
    Running database migrations
    **************************************
    * Application In Production! *
    **************************************
    
    Do you really wish to run this command? (yes/no) [no]:
    > Command Canceled!
    Generating app key
    Application key set successfully.
    JWT secret exists
    Slack webhook set, updating db
    
    
    Not enough arguments (missing: "webhook").
    
    
    Telegram chat id and bot token unset
    Base path is unset
    AUTH variable not set. Disabling authentication
    Disabling authentication
    
    Illuminate\Database\QueryException
    
    SQLSTATE[HY000] [2002] Connection refused (SQL: select * from `settings` where `name` = auth)
    
    at vendor/laravel/framework/src/Illuminate/Database/Connection.php:678
    674▕ // If an exception occurs when attempting to run a query, we'll format the error
    
    675▕ // message to include the bindings with SQL, which will make this exception a
    676▕ // lot more helpful to the developer instead of just the database's errors.
    677▕ catch (Exception $e) {
    ➜ 678▕ throw new QueryException(
    679▕ $query, $this->prepareBindings($bindings), $e
    680▕ );
    681▕ }
    682▕
    
    [2m+25 vendor frames [22m
    26 app/Helpers/SettingsHelper.php:22
    Illuminate\Database\Eloquent\Builder::get()
    
    27 app/Helpers/SettingsHelper.php:43
    App\Helpers\SettingsHelper::get()
    Clearing old jobs from queue
    
    Illuminate\Database\QueryException
    
    SQLSTATE[HY000] [2002] Connection refused (SQL: delete from `jobs`)
    
    at vendor/laravel/framework/src/Illuminate/Database/Connection.php:678
    674▕ // If an exception occurs when attempting to run a query, we'll format the error
    
    675▕ // message to include the bindings with SQL, which will make this exception a
    676▕ // lot more helpful to the developer instead of just the database's errors.
    677▕ catch (Exception $e) {
    ➜ 678▕ throw new QueryException(
    679▕ $query, $this->prepareBindings($bindings), $e
    680▕ );
    681▕ }
    682▕
    
    [2m+19 vendor frames [22m
    20 app/Console/Commands/ClearQueueCommand.php:41
    Illuminate\Database\Query\Builder::delete()
    
    [2m+13 vendor frames [22m
    34 artisan:37
    Illuminate\Foundation\Console\Kernel::handle()
    [cont-init.d] 50-speedtest: exited 0.
    [cont-init.d] 99-custom-files: executing...
    [custom-init] no custom files found exiting...
    [cont-init.d] 99-custom-files: exited 0.
    [cont-init.d] done.
    [services.d] starting services
    [services.d] done.
    [cont-init.d] 50-speedtest: exited 0.
    [cont-init.d] 99-custom-files: executing...
    [custom-init] no custom files found exiting...
    [cont-init.d] 99-custom-files: exited 0.
    [cont-init.d] done.
    [services.d] starting services
    [services.d] done.

     

  2. On 12/2/2021 at 7:20 PM, OdinEidolon said:

    Hi and thanks for this docker template!

    I am trying to add settings to the `/override` folder, correctly mounted to `/etc/netdata/override` as per template default variables. I'd like to add simple settings that apply to `netdata.conf`, such as `hostname = hello-world`, without having to modify the `netdata.conf` file manually. Is that possible, or are `override` config only available for alarms and such? I can't find any documentation about that.

    Still doubtful on how I'd do that. There must be a simple way!

    Creating a custom `/etc/netdata/override/netdata.conf` does not work, and modifying the default file is overwritten on every container update. I guess one could add a path to the docker container template, but it does not seem like a proper solution to me.

  3. On 12/2/2021 at 7:20 PM, OdinEidolon said:

    Hi and thanks for this docker template!

    I am trying to add settings to the `/override` folder, correctly mounted to `/etc/netdata/override` as per template default variables. I'd like to add simple settings that apply to `netdata.conf`, such as `hostname = hello-world`, without having to modify the `netdata.conf` file manually. Is that possible, or are `override` config only available for alarms and such? I can't find any documentation about that.

    Bump!

  4. Hi and thanks for this docker template!

    I am trying to add settings to the `/override` folder, correctly mounted to `/etc/netdata/override` as per template default variables. I'd like to add simple settings that apply to `netdata.conf`, such as `hostname = hello-world`, without having to modify the `netdata.conf` file manually. Is that possible, or are `override` config only available for alarms and such? I can't find any documentation about that.

  5. 18 hours ago, itskamel said:

    not sure what version i was on but i did a update and now nothing will upload over local network. if i try to open the web ui page i get "Internal Server Error". anyone else?

    Same. I followed the suggestions from the last few pages:

    1) loading a different docker image, and reloading :latest

    2) Deleting MariaDB log files

     

    But my NC is still unable to start.

  6. On 7/11/2021 at 1:18 PM, OdinEidolon said:

    SWAG stopped working for me, using duckdns. It worked OK for the last several months. I did not do any config change.

    Here's the docker log. Any idea?

     

    
    [cont-init.d] 10-adduser: exited 0.
    [cont-init.d] 20-config: executing...
    [cont-init.d] 20-config: exited 0.
    [cont-init.d] 30-keygen: executing...
    using keys found in /config/keys
    [cont-init.d] 30-keygen: exited 0.
    [cont-init.d] 50-config: executing...
    Variables set:
    PUID=99
    PGID=100
    TZ=Europe/Berlin
    URL=mydomain.duckdns.org
    SUBDOMAINS=wildcard
    EXTRA_DOMAINS=
    ONLY_SUBDOMAINS=true
    VALIDATION=duckdns
    CERTPROVIDER=
    DNSPLUGIN=
    [email protected]
    STAGING=false
    
    grep: /config/nginx/resolver.conf: No such file or directory
    Setting resolver to 127.0.0.11
    grep: /config/nginx/worker_processes.conf: No such file or directory
    Setting worker_processes to 4
    Using Let's Encrypt as the cert provider
    SUBDOMAINS entered, processing
    Wildcard cert for only the subdomains of mydomain.duckdns.org will be requested
    E-mail address entered: [email protected]
    duckdns validation is selected
    the resulting certificate will only cover the subdomains due to a limitation of duckdns, so it is advised to set the root location to use www.subdomain.duckdns.org
    Different validation parameters entered than what was used before. Revoking and deleting existing certificate, and an updated one will be created
    Saving debug log to /var/log/letsencrypt/letsencrypt.log
    No match found for cert-path /config/etc/letsencrypt/live/mydomain.duckdns.org/fullchain.pem!
    Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.
    Generating new certificate
    Saving debug log to /var/log/letsencrypt/letsencrypt.log
    Account registered.
    Requesting a certificate for *.mydomain.duckdns.org
    Hook '--manual-auth-hook' for mydomain.duckdns.org ran with output:
    OKsleeping 60
    Hook '--manual-auth-hook' for mydomain.duckdns.org ran with error output:
    
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    
    0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
    0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
    100 2 0 2 0 0 3 0 --:--:-- --:--:-- --:--:-- 3
    
    Certbot failed to authenticate some domains (authenticator: manual). The Certificate Authority reported these problems:
    
    Domain: mydomain.duckdns.org
    Type: dns
    Detail: DNS problem: SERVFAIL looking up TXT for _acme-challenge.mydomain.duckdns.org - the domain's nameservers may be malfunctioning

     

    Has anybody had any problem with duckdns recently?

    Of course I checked that all the settings, including the token, are correct.

     

     

    Does anybody have any hint about what's going on here? I do not understand ifthis is an issue on duckDNS's side or some configuration mishap.

  7. SWAG stopped working for me, using duckdns. It worked OK for the last several months. I did not do any config change.

    Here's the docker log. Any idea?

     

    [cont-init.d] 10-adduser: exited 0.
    [cont-init.d] 20-config: executing...
    [cont-init.d] 20-config: exited 0.
    [cont-init.d] 30-keygen: executing...
    using keys found in /config/keys
    [cont-init.d] 30-keygen: exited 0.
    [cont-init.d] 50-config: executing...
    Variables set:
    PUID=99
    PGID=100
    TZ=Europe/Berlin
    URL=mydomain.duckdns.org
    SUBDOMAINS=wildcard
    EXTRA_DOMAINS=
    ONLY_SUBDOMAINS=true
    VALIDATION=duckdns
    CERTPROVIDER=
    DNSPLUGIN=
    [email protected]
    STAGING=false
    
    grep: /config/nginx/resolver.conf: No such file or directory
    Setting resolver to 127.0.0.11
    grep: /config/nginx/worker_processes.conf: No such file or directory
    Setting worker_processes to 4
    Using Let's Encrypt as the cert provider
    SUBDOMAINS entered, processing
    Wildcard cert for only the subdomains of mydomain.duckdns.org will be requested
    E-mail address entered: [email protected]
    duckdns validation is selected
    the resulting certificate will only cover the subdomains due to a limitation of duckdns, so it is advised to set the root location to use www.subdomain.duckdns.org
    Different validation parameters entered than what was used before. Revoking and deleting existing certificate, and an updated one will be created
    Saving debug log to /var/log/letsencrypt/letsencrypt.log
    No match found for cert-path /config/etc/letsencrypt/live/mydomain.duckdns.org/fullchain.pem!
    Ask for help or search for solutions at https://community.letsencrypt.org. See the logfile /var/log/letsencrypt/letsencrypt.log or re-run Certbot with -v for more details.
    Generating new certificate
    Saving debug log to /var/log/letsencrypt/letsencrypt.log
    Account registered.
    Requesting a certificate for *.mydomain.duckdns.org
    Hook '--manual-auth-hook' for mydomain.duckdns.org ran with output:
    OKsleeping 60
    Hook '--manual-auth-hook' for mydomain.duckdns.org ran with error output:
    
    % Total % Received % Xferd Average Speed Time Time Time Current
    Dload Upload Total Spent Left Speed
    
    0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
    0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0
    100 2 0 2 0 0 3 0 --:--:-- --:--:-- --:--:-- 3
    
    Certbot failed to authenticate some domains (authenticator: manual). The Certificate Authority reported these problems:
    
    Domain: mydomain.duckdns.org
    Type: dns
    Detail: DNS problem: SERVFAIL looking up TXT for _acme-challenge.mydomain.duckdns.org - the domain's nameservers may be malfunctioning

     

    Has anybody had any problem with duckdns recently?

    Of course I checked that all the settings, including the token, are correct.

  8. 14 minutes ago, ich777 said:

    Have you got a tutorial for me how to set this up since I got the container up and running but ran into some problems or at least point me in the right direction?

    I personally have not tested yet...

     

    Here is a script to deploy the client and the server:

    https://github.com/GrimKriegor/TES3MP-deploy

     

    Here is a guide, it says it should be rather simple, but does not mention Linux:

    https://steamcommunity.com/groups/mwmulti/discussions/1/133258593388999187/

     

    Here an older guide, but specific to Linux:

    https://steamcommunity.com/groups/mwmulti/discussions/1/133258092238983950/

     

    Hope it helps a little bit. Once again, thank you very much.

    • Like 1
  9. 15 hours ago, ich777 said:

    Exactly. But I would do that in a user.sh that does this on every start of the container and checks if everything is installed and configured properly.

    You can do that with a user.sh script mount it in the template simply search this thread on how to do that.

    Search for 'user.sh'.

    Done! Thank you so much!

     

    Had to manually mount user.sh this way in the advanced docker options in Unraid:

    --mount type=bind,source=/my/path/to/user.sh,target=/opt/scripts/user.sh

     

    user.sh does:

    #!/bin/bash
    # Should be located in /opt/scripts/user.sh
    
    SSHD_CONFIG="Port 22\nPermitRootLogin no\nChallengeResponseAuthentication no\nUsePAM yes\nX11Forwarding no\nPrintMotd no\nAcceptEnv LANG LC_*\n"
    PASSWORD="myveryownpassword" # setting up keys is too much hassle ;)
    
    if [ ! -f /usr/sbin/sshd ]; then
        echo "### Installing missing pacakges ###"
    
        apt update && apt-get -y install ssh nano
        echo -e $SSHD_CONFIG > /etc/ssh/sshd_config
        echo "nwnee:$PASSWORD" | chpasswd
    fi
    
    echo "### Starting ssh ###"
    service ssh start

     

    • Like 1
  10. 6 hours ago, ich777 said:

    Type this in 'su $USER' (without Quotes) from inside the container.

    You can install SSH inside the container and then allow access to this container over SSH (inside the container you are not really root of your complete system).

    Correct me if I am wrong.

    I would do this by:

    1. Configuring the container to open port 22 to the Unraid server (to port 22222 or something)
    2. entering the container by docker exec -it NWN  /bin/bash
    3. apt update; apt install ssh
    4. edit ssh config in /etc/ssh/sshd_config
    5. service ssh start
    6. set ssh service to start on container boot (i do not know how to do this)
    7. set a new password for the nwnee user inside the container
    8. ssh [email protected] (or the exact container IP)
    9. screen -xS nwnee

    Am I missing anything? The only thing I think I have no idea how to do is step 6: I have tried both creating /etc/init/ssh.conf and using update-rc.d.

    Any suggestion?

  11. 1 hour ago, ich777 said:

    Don't do this!

    The users inside the containers are 99:100 otherwise the container can't read the files!

     

    I don't understand that use case...

     

    I don't understand why you want to run it as another user?

    The user for the container and everything else should be nobody:users 99:100.

    OK, I see. But then how can I access the container controls (via screen) without being root? I need to give access to the container to some friends who are not allowed to access my server as root.

  12. Hi @ich777, I am trying to give access to the NWN server to somebody outside my house (but inside my VPN).

    To do so I:

    • created a new user in Unraid called nwnee (uid:gid 1002:1002), to which my friends can ssh to
    • run the docker with additional options  `--user nwnee`
    • chowned -R the NWN files to user nwnee
    • also tried setting docker UID and GID env vars to 1002:1002 instead of 99:100.

    However I still get this error when running the docker:

    /usr/bin/docker: Error response from daemon: OCI runtime create failed: container_linux.go:346: starting container process caused "exec: "/opt/scripts/start.sh": stat /opt/scripts/start.sh: permission denied": unknown.

    The docker run line is:

    /usr/local/emhttp/plugins/dynamix.docker.manager/scripts/docker run -d --name='NWN' --net='lsio' -e TZ="Europe/Berlin" -e HOST_OS="Unraid" -e 'LOG_LVL'='7' -e 'MOD_NAME'='World of Greyhawk CEP 2_65' -e 'NWNEE_V'='latest' -e 'MAX_CLIENTS'='10' -e 'MINLEVEL'='1' -e 'MAXLEVEL'='40' -e 'PAUSEAPLAY'='1' -e 'PVP'='2' -e 'SERVERVAULT'='1' -e 'ELC'='0' -e 'ILR'='0' -e 'ONEPARTY'='0' -e 'DIFF'='4' -e 'AUTO_SAV_I'='60' -e 'SRV_NAME'='giofonchio' -e 'PPW'='m' -e 'APWD'='mm' -e 'PUBLIC_SRV'='0' -e 'RLD_W_E'='0' -e 'GAME_PARAMS'='-dmpassword mmm' -e 'UID'='1002' -e 'GID'='1002' -e 'UMASK'='000' -p '5121:5121/udp' -v '/mnt/cache/appdata/nwnee':'/nwnee':'rw' -v '/mnt/user/Storage/Games/nwnee/wog':'/nwnee/Neverwinter Nights':'rw' -dit --restart=unless-stopped --user nwnee 'ich777/nwnee-server' 

    Of course if I do not specify docker run --user try to access the docker as user nwnee I get permission denied:

    nwnee@giofonchio> docker exec -u nwnee -ti NWN screen -xS nwnee
    Got permission denied while trying to connect to the Docker daemon socket at unix:///var/run/docker.sock: Get http://%2Fvar%2Frun%2Fdocker.sock/v1.40/containers/NWN/json: dial unix /var/run/docker.sock: connect: permission denied

     

    I'm not sure how to fix this. Can you help?

     

  13. 15 hours ago, ich777 said:

    Update the container and the server runs in a screen session to connect to it open up a Unraid terminal (not the from the container) and type in: 'docker exec -u nwnee -ti NAMEOFYOURCONTAINER screen -xS nwnee' (without quotes).

     

    Or you can also open up a terminal from the container itself and type in: 'screen -xS nwnee' (without quotes).

     

    To disconnect from the screen session press CTRL+A and then CTRL+D, then simply close the terminal window.

     

    I've also added this description to the template but it will take a few hours to update in the CA App:

    CONSOLE: To connect to the console open up the terminal on the host machine and type in: 'docker exec -u nwnee -ti NAMEOFYOURCONTAINER screen -xS nwnee' (without quotes) to exit the screen session press CTRL+A and then CTRL+D or simply close the terminal window in the first place.

    It's a good solution, yes. Thank you, will test in a few days.

    • Like 1
  14. 10 minutes ago, ich777 said:

    Exactly, I think this is also how the beamdog container works but a little different.

     

    I will modify the container so that screen is used, so you can easily connect to the console of the gameserver (just open a terminal from the container and connect to the screen session).

    Yeah this is good as well!

  15. On 8/25/2020 at 10:06 AM, ich777 said:

    If you look at the commits in my github repo it was also backgrounded in the old release.

     

    In my case everything works as expected if I enter the variables.

    It's true that my container is different from beamdogs.

     

    Another possibility is to run nwnee in a screen session and connect to that.

     

    What is the goal that you want to accomplish?

     

    Save should be no problem since you can specify a autosave intervall.

     

    Which options are required?

     

    EDIT: can you send me a link or tutorial how loading a game works?

    Sorry, I somehow missed your comment. My bad!

     

    So, basically how the server works is that you launch it with a module, and it JustWorksTM.

    However, there are a number of things you can do if you can access the server directly. Options can be changed in-game, you can load and save games (very useful if you and your party want to retry a game section, or to save before a major boss), you can kick users whose NWN has crashed (happens often unfortunately) so that they can log back in quickly, etc. This might not be useful if hosting a always-on persistent world, but it is essential if playing a module with a group of friends.

     

    As described in Beamdog's docker (link), this is accomplished by running the docker with -dit and then attaching to it (with docker attach).

    Once you are attached to it, write help and you'll be able to read on STDOUT all the available commands (load, save, kick, etc.), which you can execute. For example:

    save 77 test_name   ### saves the savegame "test_name" on slot 77
    load 77             ### loads slot 77
    difficulty 4        ### sets difficulty to max
    oneparty 1          ### allow only one party
    kick 6              ### kick player 6 from the server
    ### many more commands are available

    With the modification currently detaching STDIN this does not work and the server is effectively useful only for playing persistent worlds.

  16. Hi @ich777, I might have found a bug in the new NWN docker.

    In the latest commits, you introduced a SIGTERM handler in start.sh.

    However, this means you background the started server. This detaches STDIN.

     

    The NWN server requires an attached STDIN to give it commands (load, save, set options, etc.). This is detailed in the Beamdog docker as well. Thus, with this update which detaches STDIN, one cannot control the server directly anymore. Would you be able to fix it? Reverting the addition of the handler would be enough.

     

    Thanks!

  17. On 6/14/2020 at 1:05 PM, OdinEidolon said:

    I have a question regarding System AutoFan.

    Does the plugin take into account the temperature of the drives, that of the CPU, or both? Because I'd like to control both, but clearly an identical threshold for both would make no sense. It'd be nice to have two different threshold groups, and apply the fastest fan speed coming from both calculations.

    Is there anybody that can answer my question? Because my drives are all off right now, but the fan is still spinning 100%, for some unfathomable reason. Is there any log I can access?

  18. I have a question regarding System AutoFan.

    Does the plugin take into account the temperature of the drives, that of the CPU, or both? Because I'd like to control both, but clearly an identical threshold for both would make no sense. It'd be nice to have two different threshold groups, and apply the fastest fan speed coming from both calculations.