itzg / itzg/docker-minecraft-server

Broken ftp protocol support for map download ($WORLD)

Open
#1,588 3 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Shell
Stars
14.3k
Forks
1.9k
Avg merge
2d 10h
Merged PRs (30d)
31

Description

### Describe the problem

I try to start a container with a map hosted on a ftp server but it fail to download the map.

This commit (18d8aba) seems to introduce a regression on ftp protocol support for map download. You've replaced the `curl` command with the `get` sub command of [mc-image-helper](https://github.com/itzg/mc-image-helper) which seems to not support ftp protocol.

### Container definition

```
docker run -it -p 25565:25565 -e EULA=TRUE -e WORLD=ftp://host/path/to/map.zip itzg/minecraft-server
```

### Container logs

```
[init] Running as uid=1000 gid=1000 with /data as 'drwxrwxr-x 2 1000 1000 4096 Jun 27 14:17 /data'
[init] Resolved version given LATEST into 1.19 and major version 1.19
[init] Resolving type given VANILLA
[init] Locating download for minecraft_server.1.19.jar ...
[init] Downloading world from ftp://host/path/to/map.zip
[mc-image-helper] 23:06:22.036 ERROR : 'get' command failed: Unroutable protocol scheme: ftp://host
[init] ERROR: failed to download world from ftp://host/path/to/map.zip
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing commit 18d8aba and the startup path that downloads the WORLD archive through mc-image-helper. Reproduce the ftp://host/path/to/map.zip case from the issue and compare it with the prior curl-based behavior; done means an FTP-hosted map downloads successfully without the reported unroutable-protocol error.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, shell
Domain
devops, infrastructure
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.