I try to build the docker image using the provided Dockerfile, but I always get an error that it is unable to build because it can’t find the packages in apt.txt. I haven’t been able to find a solution to this, would anyone be able to help me out?
Docker isn’t necessary. You can pretty much ignore that entirely – I think the organizers are just being transparent, as well as putting it out there for any special use cases. Basically you just need to submit a zip file with Python code in a file called “solution.py”, that contains two module level (global) functions,
preprocess(). You can find the specifications for those in the documentation for the Hindcast Evaluation stage.
Just make sure that your .zip file doesn’t have any directories in it (your solution.py file in the root of the .zip file); that your
preprocess() returns a Python
dict object, and that your
predict() returns three float values. Technically that should be enough to pass the smoke test, but don’t quote me on it.
I would recommend that you just pull the current official Docker image that we’ve already built (and that is the one that gets used by the runtime cluster when you submit). You can do that with the
make pull Makefile recipe that we’ve provided. See this section of the README. Let me know if you still run into issues using the pulled Docker image.
Building the Docker image yourself is useful if you need to test changes to the runtime environment before you submit a request. We’re not going to accept requests to change the runtime environment at this point for the Hindcast Stage.