This template helps you writing your own optimization model in Go. It contains several files to easily deploy the model to the Nextmv platform.
The most important files created are main.go and input.json.
main.gois where you write your model.schema.gocontains the input and output schema definitions.input.jsonis a sample input file that follows the input definition inschema.go.
Run the command below to check that everything works as expected:
go run . -runner.input.path input.json \
-runner.output.path output.json -recipient nextmvA file output.json should have been created with a greeting message.
Pre-requisites: Docker needs to be installed.
To run the application locally in the same docker image as the one used on the Nextmv Cloud, you can use the following command:
GOOS=linux go build -o main . && \
cat input.json | docker run -i --rm \
-v $(pwd):/app ghcr.io/nextmv-io/runtime/default:latest \
/app/mainYou can also debug the application by running it in a Dev Container. This
workspace recommends to install the Dev Container extension for VSCode. If you
have the extension installed, you can open the workspace in a container by using
the command Dev Containers: Reopen in Container.
- Open
main.goand start writing your own Go model. - API documentation and examples can be found in the package documentation.
- Further documentation, guides, and API references about custom modeling and deployment can also be found on our blog and on our documentation site.
- Need more assistance? Send us an email!