ArchiveTeam/warrior-dockerfile

Startup loop

scottsweb opened this issue · 3 comments

Seeing the following logs when starting the container:

warrior    | Processing triggers for libc-bin (2.27-3ubuntu1) ...
warrior    |  * Restarting DNS forwarder and DHCP server dnsmasq
warrior    | 
warrior    | dnsmasq: setting capabilities failed: Operation not permitted
warrior    | Aug 24 16:49:56 04cc79070830 dnsmasq[472]: setting capabilities failed: Operation not permitted
warrior    | Aug 24 16:49:56 04cc79070830 dnsmasq[472]: FAILED to start up
warrior    |    ...fail!
warrior    | stty: 'standard input': Inappropriate ioctl for device
warrior    | 
warrior    | 
warrior    |   The warrior has successfully started up.
warrior    | 
warrior    |   Point your web browser to http://:8001/ to manage your warrior.
warrior    | cat: write error: Broken pipe
warrior    | *** Booting runit daemon...
warrior    | *** Runit started as PID 499
warrior    | Aug 24 16:49:57 04cc79070830 cron[504]: (CRON) INFO (pidfile fd = 3)
warrior    | Aug 24 16:49:57 04cc79070830 cron[504]: (CRON) INFO (Running @reboot jobs)
warrior    | config file exists at /home/warrior/projects/config.json - ignoring environment variables!
warrior    | starting warrior
warrior    | config file exists at /home/warrior/projects/config.json - ignoring environment variables!
warrior    | starting warrior

This then loops over and over. I have tested the JSON file and it seems valid, containing:

{
	"downloader": "name",
	"selected_project": "auto",
	"concurrent_items": 4
}

Looks related to #2

Starting the container with --privileged fixes the dnsmasq error. Still seeing Inappropriate ioctl for device though.

Switching from a mounted config.json file to environment vars worked out. With docker-compose:

version: '2'
services:
    warrior:
        image: archiveteam/warrior-dockerfile
        volumes:
            - "/folder/on/machine:/data/data"
        ports:
          - "8001:8001"
        environment:
          - DOWNLOADER=name
          - CONCURRENT_ITEMS=3
          - SELECTED_PROJECT=auto
        restart: always
        privileged: true
        container_name: warrior

All seems well. So I think the non rpi (might be on the rpi container too) container is having an issue with reading the config file.