A long time ago, on a server far, far away 👋

Claude Code with Ollama

During 2025 the AI race has shifted from creating best models to creating best agents. By end of year, most developers argue that Claud Code has taken lead. Standard Claude Code usage typically requires an expensive Anthropic subscription. But beyond the cost savings, using Ollama with Claude Code offers significant advantages regarding data privacy, confidentiality, and service autonomy. By redirecting the Claude Code interface to a local instance, you effectively bypass several of Anthropic’s cloud-based data collection and usage policies. These include model training opt-out, technical information collection, usage tracking, regional constraints, intellectual property ownership and more. ...

2026-01-25 · 1 min · Ivan Franjic

Docker model runner

Sometime in April this year, Docker added new feature called Docker Model Runner. It’s meant to streamline the process of pulling, running, and serving large language models (LLMs) and other AI models directly from Docker Hub or OCI-compliant registries. It integrates with Docker Desktop and Docker Engine, allows you to serve models via OpenAI-compatible APIs, package GGUF files as OCI, and interact with models from the command line. Features Pull and push models Serve models on OpenAI-compatible APIs Package and publish GGUF files as OCI Run AI models directly from the command line Manage local models and display logs Requirements Docker Model Runner is supported on the following platforms: ...

2025-07-27 · 3 min · Ivan Franjic

Golang gRPC example

What is gRPC? gRPC is a high performance, open source universal RPC framework. By default, it uses Protocol Buffers. Example Prerequisites Golang Protocol Buffer compiler - protoc sudo apt install protobuf-compiler Update PATH variable to include the path to the protoc executable Golang plugins go install google.golang.org/protobuf/cmd/protoc-gen-go@latest go install google.golang.org/grpc/cmd/protoc-gen-go-grpc@latest Creating gRPC services The process of creating gRPC services follows three steps: Define Messages/Services Generate client/server source Implement gRPC service methods Method types There are four types of service methods that can be defined. ...

2022-06-12 · 2 min · Ivan Franjic

Creating Docker Github action

Creating Docker Github action This is an example how to create a simple Docker Github action. To get more familiar with Github actions, check official docs. Start with an empty git repo: mkdir docker-gha-example cd docker-gha-example git init For repository to be considered a Github action, it is required to have a file action.yml or action.yaml, this metadata file will define inputs, outputs and run configuration. name: Docker Github action description: This is an example of Docker Github action branding: icon: star color: yellow inputs: name: description: who to greet required: false default: 'world' outputs: greeting: description: greeting message runs: using: docker image: Dockerfile args: - ${{ inputs.name }} For more details on action.yml check docs. ...

2022-04-12 · 2 min · Ivan Franjic

Dockerfile best practices

This guide provides detailed explanations and recommendations for writing efficient, secure, and maintainable Dockerfiles. ARG Purpose: Defines build-time variables that can be passed to the Docker build process using --build-arg. Best Practices: Use lower case for ARG variable names to distinguish them from ENV variables. Declare ARG variables close to where they are used in the Dockerfile for clarity. Avoid exposing sensitive information via ARG, as build arguments can be viewed in image history. Example: ...

2021-02-17 · 4 min · Ivan Franjic