wiktorn / Overpass-API

Overpass API docker image
MIT License
129 stars 47 forks source link

Infinite download loop on image run, no connection to port #119

Open artais27 opened 4 months ago

artais27 commented 4 months ago

Hello, sorry if my question is dumb, I'm very new to Docker.

I have followed installation instructions (without modifying any files): downloaded image, then started it, the script has downloaded indexed database (in default clone mode) - 320 GB approximately.

Then I ran it with: sudo docker run -p 12345:80 wiktorn/overpass-api

It has downloaded minute upgrades for ~20 hours and closed. Then I used same command again and now it infinitely displays:

--2024-02-22 11:31:16--  https://dev.overpass-api.de/clone//2024-02-19/replicate_id
Resolving dev.overpass-api.de (dev.overpass-api.de)... 95.217.37.171, 2a01:4f9:2b:2fd4::2
Connecting to dev.overpass-api.de (dev.overpass-api.de)|95.217.37.171|:443... connected.
HTTP request sent, awaiting response... 404 Not Found
2024-02-22 11:31:16 ERROR 404: Not Found.

Any attempts of connections to port 12345 or 80 result in "connection refused" errors wget "http://127.0.0.1:12345/api/interpreter?data=node(1);out geom;"

What are my options to make it run and serve connection?

UPD, wget response:

--2024-02-22 11:40:22--  (try: 2)  http://127.0.0.1:12345/api/interpreter?data=node(1);out%20geom;
Connecting to 127.0.0.1:12345... connected.
HTTP request sent, awaiting response... Read error (Connection reset by peer) in headers.
Retrying.
wiktorn commented 4 months ago

Hi,

Docker containers are by default ephemeral. That means, that when they stop running, they can be disposed of.

The other thing is, that docker run command is creating a new container every time it is run. If you are not using volume mounts then each time the container will start with empty database.

I'm lacking the context here, but at least from the snippets that you've copied it looks like the script is stuck on trying to clone again the database.

Instead of that, try:

docker ps -a

To find you container which has the database and use docker start to start it up. Also, I recommend moving the database from the container into dedicated volume mount, as with current setup, you'll need to copy the database every time you want to change some container settings or upgrade the version.