anatol / pacoloco

Caching proxy server for Arch Linux pacman
MIT License
221 stars 33 forks source link

Container fails to start #118

Open awptechnologies opened 2 weeks ago

awptechnologies commented 2 weeks ago

after multiple attempts the container will not start. keeps getting non 0 exit code.

anatol commented 2 weeks ago

Could you please provide more information about what are you trying to do?

awptechnologies commented 2 weeks ago

Im just trying to run the container with your docker-compose. It just loops. preparing starting failed

Is the image exsposed to be only 22MB

awptechnologies commented 2 weeks ago

I run 100 containers in my environment so i would like to think there is nothing wrong with my config. Im going to try version 1.7 and see if that makes a difference

anatol commented 2 weeks ago

cc @dezeroku @HarHarLinks @ilya-zlobintsev

HarHarLinks commented 2 weeks ago

I'm running latest amd64, docker reports it's 20.9MB, works for me. You will have to share some more detailed info. Does pacoloco have log levels? Check dockerd logs. Volume mounts writeable? Address pool or something used up?

awptechnologies commented 2 weeks ago

I will check again this evening and try to log what happens if i use docker events i can see container being created and destroyed almost instantly. Is there a specific user this container runs as? since i use nfs volumes i want to make sure permissions are right.

anatol commented 2 weeks ago

@awptechnologies start with the docker-related documentation https://github.com/anatol/pacoloco?tab=readme-ov-file#docker

If it does not work for you then report your config, steps that you made and logs.

awptechnologies commented 2 weeks ago

Whatever issue was commenting out the archlinux-reflector line allowed it to start. Any reason why?

dezeroku commented 2 weeks ago

Example pacoloco.yaml in README is more of a showcase of all the possible options, it shouldn't be used as-is. In other words you need to modify it to suit your needs

For the archlinux-reflector part to work you'd have to generate the mirrorlist yourself and mount it into the container under a correct path.

Anyway, when I started the docker-compose with default config from README I've got this line in logs, it explains nicely what's wrong with the config. Does it not appear for you?

config.go:82: mirrorlist file /etc/pacman.d/reflector_mirrorlist for repo archlinux-reflector does not exist or isn't readable for userid 0
awptechnologies commented 2 weeks ago

Thats exactly what i got. I then got an error that said path /var/cache/pacoloco/pkgs/archlinux didn't exist so i created it manually and then the error was no longer there. But when i set up the server in my arch host it failed to get updates. do i have to let pacoloco pull packages during its cron job first?

awptechnologies commented 2 weeks ago

error: failed retrieving file 'core.db' from 10.1.1.24:9129 : Failed to connect to 10.1.1.24 port 9129 after 2 ms: Could not connect to server error: failed retrieving file 'extra.db' from 10.1.1.24:9129 : Failed to connect to 10.1.1.24 port 9129 after 1 ms: Could not connect to server error: failed retrieving file 'multilib.db' from 10.1.1.24:9129 : Failed to connect to 10.1.1.24 port 9129 after 1 ms: Could not connect to server warning: too many errors from 10.1.1.24:9129, skipping for the remainder of this transaction error: failed to synchronize all databases (download library error) -> error refreshing databases - exit status 1

awptechnologies commented 2 weeks ago

fixed it in the pacoloco.yaml i had to change the server address to 0.0.0.0. Totally slipped my mind i forgot that 127.0.0.1 only listens from localhost not from any host.

HarHarLinks commented 1 week ago

@anatol perhaps the README should be changed to refer to pacoloco.yaml.sample rather than maintaining a copy with example values that are in some cases misleading?

And a note could be added in either place about using 0.0.0.0 with docker/container-based setup.

anatol commented 1 week ago

@HarHarLinks I agree that make sense to make README more usable and closer to what users need at at the real systems. Would you be able send a quick PR for it?