Add a defer function to ensure the temporary file is closed and removed after the download is complete. Update the io.Copy to ignore errors to prevent panic in case of write failures.
Add keychain passphrase to global flags for ipatool to ensure secure access to the keychain during non-interactive operations. This change is necessary to prevent potential security issues when using the ipatool in automated environments.
Update the port mapping in docker-compose.yml to use port 8888 instead of 8000 for the service. This change ensures compatibility with the updated application configuration.
Move Dockerfile, ipatool, and docker-compose.yml from the docker directory to the root directory to simplify the project structure and improve maintainability. Update the paths in the Dockerfile to reflect the new locations.
Add docker configuration for building and running the application, including a dockerfile and docker-compose.yml. Set up go modules with dependencies and create the basic api structure with main.go, models, and wrapper files. Include .dockerignore and .gitignore files to manage ignored files and directories. Add constants for ipatool path and global flags.