Advertisement · 728 × 90

Posts by Pradumna Saraf

Screenshot of Docker Docs page titled “Use OpenCode with Docker Model Runner,” showing a guide on connecting OpenCode to Docker Model Runner, with steps, prerequisites, and an acknowledgment crediting Pradumna Saraf.

Screenshot of Docker Docs page titled “Use OpenCode with Docker Model Runner,” showing a guide on connecting OpenCode to Docker Model Runner, with steps, prerequisites, and an acknowledgment crediting Pradumna Saraf.

Screenshot of Docker Docs page titled “Use Claude Code with Docker Model Runner,” showing a guide on running Claude Code with Docker Model Runner, including steps, prerequisites, and an acknowledgment crediting Pradumna Saraf.

Screenshot of Docker Docs page titled “Use Claude Code with Docker Model Runner,” showing a guide on running Claude Code with Docker Model Runner, including steps, prerequisites, and an acknowledgment crediting Pradumna Saraf.

Are you running out of tokens in OpenCode or Claude Code?

Check out my recent guides on running them locally. I wrote official Docker guides on using OpenCode & Claude Code with Docker Model Runner.

OpenCode: docs.docker.com/guides/openc...
Claude Code: docs.docker.com/guides/claud...

3 days ago 0 0 0 0
Illustration of a compose.yml file showing a Docker Compose service named api using the image myapp with stop_grace_period: 20s configured.

Illustration of a compose.yml file showing a Docker Compose service named api using the image myapp with stop_grace_period: 20s configured.

Use `stop_grace_period` to give your app time to shut down properly.

When you stop a container, @Docker waits before force-killing it. This helps finish requests, save data, and avoid unexpected issues.
@docker.com

1 week ago 0 0 0 0

100%

1 week ago 0 0 0 0
Video

Meet Pradumna Saraf. Docker Captain. Open source advocate. Community builder.

In this spotlight, he shares his journey into containers and cloud-native, and what keeps him excited about the future of development.

Read more: https://bit.ly/46WNUjF

1 month ago 2 1 0 0
A dark-themed Dockerfile code snippet compares an original and a hardened version. The original uses "FROM node: 24," and the hardened uses "FROM dhi.io/node: 24."

A dark-themed Dockerfile code snippet compares an original and a hardened version. The original uses "FROM node: 24," and the hardened uses "FROM dhi.io/node: 24."

Switching to a Docker Hardened Image (DHI) is a simple change.

The Docker workflow remains the same, but the base image is built with fewer packages, reduced attack surface, and better security defaults.
@docker.com

3 weeks ago 1 0 1 0
The code block window titled "compose.yml" shows YAML code for a Docker service. It features build context, Dockerfile, and cache settings.

The code block window titled "compose.yml" shows YAML code for a Docker service. It features build context, Dockerfile, and cache settings.

In Docker Compose, you can use `cache_from` in the `build` section to reuse layers from an existing image and speed up builds

This is especially useful in CI environments where a local build cache doesn’t exist.
@docker.com

1 month ago 2 1 0 0
Post image

Play with Docker is now deprecated and no longer available.

If you’re looking for a simple browser-based Docker playground, you can use LabSpaces instead. It will spin up environments instantly and experiment with Docker without installing anything locally.

@docker.com

1 month ago 1 0 0 0
Advertisement
Preview
Using Profiles with Docker Compose Most applications don’t need all Docker Compose services running all the time with the core...

In case you missed it, I wrote a new blog about Docker Compose profiles and how they let you enable or disable services based on what you actually need.

Check it out:
dev.to/pradumnasara...

1 month ago 0 0 0 0
A dark-themed code editor displays a `compose.yml` file, which defines three Docker Compose services: `api`, `worker`, and `scheduler`. All three services share the same configuration for `image: myapp:latest`, `restart: unless-stopped`, `volumes: - .:/app`, and environment variables `NODE_ENV: production` and `LOG_LEVEL: info`. Their unique commands are `npm run api`, `npm run worker`, and `npm run scheduler`, respectively. A large red 'X' graphic is prominently featured in the top right corner of the editor window.

A dark-themed code editor displays a `compose.yml` file, which defines three Docker Compose services: `api`, `worker`, and `scheduler`. All three services share the same configuration for `image: myapp:latest`, `restart: unless-stopped`, `volumes: - .:/app`, and environment variables `NODE_ENV: production` and `LOG_LEVEL: info`. Their unique commands are `npm run api`, `npm run worker`, and `npm run scheduler`, respectively. A large red 'X' graphic is prominently featured in the top right corner of the editor window.

A dark-themed code editor displays a Docker Compose file named `compose.yml`. The file defines a reusable `x-common` configuration block, which includes `restart: unless-stopped`, a volume mount of `.:/app`, and environment variables `NODE_ENV: production` and `LOG_LEVEL: info`. Below this, three services are defined: `api`, `worker`, and `scheduler`. Each service uses `myapp:latest` as its image, merges the `*common` configuration, and has a unique `npm run` command (e.g., `npm run api` for the api service). A prominent green checkmark icon is positioned in the top right corner of the window.

A dark-themed code editor displays a Docker Compose file named `compose.yml`. The file defines a reusable `x-common` configuration block, which includes `restart: unless-stopped`, a volume mount of `.:/app`, and environment variables `NODE_ENV: production` and `LOG_LEVEL: info`. Below this, three services are defined: `api`, `worker`, and `scheduler`. Each service uses `myapp:latest` as its image, merges the `*common` configuration, and has a unique `npm run` command (e.g., `npm run api` for the api service). A prominent green checkmark icon is positioned in the top right corner of the window.

If you are repeating the same config and environment variables across multiple Docker Compose files, use YAML anchors.

You can define the config once and reuse it everywhere. This keeps your compose files cleaner, easier to update, and more maintainable.
@docker.com

1 month ago 0 0 0 0
Preview
Using Profiles with Docker Compose In this setup, the backend, frontend, and database form the core of the application and are started...

Here: dev.to/pradumnasara...

2 months ago 0 0 0 0
Preview
Using Profiles with Docker Compose In this setup, the backend, frontend, and database form the core of the application and are started...

Check out my new blog on Docker Compose profiles and how they let you enable or disable services based on what you actually need:

dev.to/pradumnasara...

@docker.com

2 months ago 0 0 0 0

I'll write a short blog on Docker Compose profiles and publish it soon!

2 months ago 0 0 1 0

I'll write a short blog and publish it soon!

2 months ago 0 0 0 0

Being too rigid with tools can hold developers back from better solutions.

3 months ago 0 0 0 0
Advertisement
Screenshot of a `compose.yml` file showing Docker Compose services with profiles. The `app` service runs by default, while `prometheus` and `grafana` services are configured with a `monitoring` profile and only run when that profile is enabled.

Screenshot of a `compose.yml` file showing Docker Compose services with profiles. The `app` service runs by default, while `prometheus` and `grafana` services are configured with a `monitoring` profile and only run when that profile is enabled.

Did you know Docker Compose has profiles?

You can keep heavy services like Prometheus and Grafana turned off by default, and only start them when you actually need monitoring.

You can start them by running: docker compose --profile monitoring up
@docker.com

3 months ago 2 0 0 2
Preview
Improving Container Security with Docker Hardened Images Container security remains a significant concern. Base images are bloated and contain unnecessary/or...

Check out my new blog on container security using Docker Hardened Images. I explain what they are, why they matter, and how they help reduce security risks in containers with a simple demo.

dev.to/pradumnasara...

@docker.com

3 months ago 0 0 0 0

Huge respect to companies that maintain their SDKs along with up-to-date documentation. It’s not easy when APIs change frequently.

3 months ago 0 0 0 0
Preview
Improving Container Security with Docker Hardened Images Container security remains a significant concern. Base images are bloated and contain unnecessary/or...

It's LIVE: dev.to/pradumnasara...

3 months ago 1 1 0 0
Blog editor showing the post “Improving Container Security with Docker Hardened Images,” featuring a Docker logo graphic, author avatar, and publish controls.

Blog editor showing the post “Improving Container Security with Docker Hardened Images,” featuring a Docker logo graphic, author avatar, and publish controls.

Tomorrow!

3 months ago 0 0 1 0
A screenshot of the Docker Hub website's "Hardened Images" page. The left sidebar shows user "pradumnasaraf" with navigation links like Repositories, Hardened Images (selected), Collaborations, Settings, Billing, and Usage. The main content area features a banner titled "Docker Hardened Images" with the text "Choose secure, minimal, production-ready images. They're free to use." and a "How it works" button. Below this are a search bar, a "Filter by" dropdown, and a "Make a request" button. The page then displays sections for "Recently added" hardened images (Time MCP Server, MongoDB MCP Server, Memory MCP Server, Docker Hub MCP Server, Grafana MCP Server, GitHub MCP Server) and "Featured" images and Helm charts, including Dart (a hardened image) and Traefik Helm chart.

A screenshot of the Docker Hub website's "Hardened Images" page. The left sidebar shows user "pradumnasaraf" with navigation links like Repositories, Hardened Images (selected), Collaborations, Settings, Billing, and Usage. The main content area features a banner titled "Docker Hardened Images" with the text "Choose secure, minimal, production-ready images. They're free to use." and a "How it works" button. Below this are a search bar, a "Filter by" dropdown, and a "Make a request" button. The page then displays sections for "Recently added" hardened images (Time MCP Server, MongoDB MCP Server, Memory MCP Server, Docker Hub MCP Server, Grafana MCP Server, GitHub MCP Server) and "Featured" images and Helm charts, including Dart (a hardened image) and Traefik Helm chart.

One of the biggest announcements from Docker (@docker.com) this year, at least for me: Docker Hardened Images (DHI) are now free for every developer.

Making secure, minimal, production-ready images available to everyone changes how we think about container security.

3 months ago 0 0 0 0
Preview
Running AI Models with Docker Compose Docker Compose has completely changed the game in how we run and connect a multi-service application....

In case you missed it, I recently wrote about how you can run LLMs with Docker Compose using Docker Model Runner to speed up your AI development. Check it out here:

dev.to/pradumnasara...

4 months ago 0 0 0 0
Post image

Using the "-ft" flag with Docker logs helps you follow the logs and monitor the output of a running container in real-time.

Otherwise, without the flag, you have to keep typing the log command to get output. "-f" is for follow, and "-t" is for timestamps.
@docker.com

4 months ago 0 0 0 0

People used to fight over JavaScript frameworks. That still happens, just quieter. Now the fight is between LLM models, and it is a very expensive one.

4 months ago 0 0 0 0
Clear glass and blue acrylic MVP award with globe engraving. "Microsoft Most Valuable Professional 2025" text. Recognizes technical contributions.

Clear glass and blue acrylic MVP award with globe engraving. "Microsoft Most Valuable Professional 2025" text. Recognizes technical contributions.

Blue crystal award with "MVP" logo for Microsoft Most Valuable Professional. Date "2025" on a clear base. The trophy sits on a wooden surface.

Blue crystal award with "MVP" logo for Microsoft Most Valuable Professional. Date "2025" on a clear base. The trophy sits on a wooden surface.

Exciting news! I’m honoured to share that I am officially a Microsoft MVP in DevOps! 🎉

I didn’t see this coming. People inside and outside the program say the award is like the “Oscars of tech,” and I’m truly grateful to Microsoft (@microsoft.com) for recognising me.

#mvpbuzz

4 months ago 2 0 0 0
Advertisement
GitHub pull request page showing a proposed change to introduction.md, adding "Akobir" to a list. The pull request is open and titled "Update introduction.md to include 'Akobir' #117".

GitHub pull request page showing a proposed change to introduction.md, adding "Akobir" to a list. The pull request is open and titled "Update introduction.md to include 'Akobir' #117".

Hacktoberfest is over, but spam PRs are not.

4 months ago 0 0 0 0

I know how much effort Mohammad has put into it (it took him years to release).

Congratulations on your book! Also, thank you for the sweet message on the title page of the book :).

4 months ago 0 0 0 0
A hand holds a blue book cover titled "Docker Kubernetes Security" by Mohammad-Ali A'râbi. The top left features the "DS DockerSecurity.io" logo and website, with "[v1.0.0]" on the top right. A white square with a plus sign is positioned between "Docker" and "Kubernetes" in the main title. Below, it details "Supply Chain Security + Runtime Protection" alongside a stylized white and light blue whale tail design. The author's name, "Mohammad-Ali A'râbi", is prominent at the bottom, with "Forewords by Hamida Rebai and Liran Tal" beneath it. A black keyboard is partially visible below the book, against a vibrant, blurred orange and red background.

A hand holds a blue book cover titled "Docker Kubernetes Security" by Mohammad-Ali A'râbi. The top left features the "DS DockerSecurity.io" logo and website, with "[v1.0.0]" on the top right. A white square with a plus sign is positioned between "Docker" and "Kubernetes" in the main title. Below, it details "Supply Chain Security + Runtime Protection" alongside a stylized white and light blue whale tail design. The author's name, "Mohammad-Ali A'râbi", is prominent at the bottom, with "Forewords by Hamida Rebai and Liran Tal" beneath it. A black keyboard is partially visible below the book, against a vibrant, blurred orange and red background.

A white piece of paper features a handwritten dedication in blue ink at the top, reading "To the best Captain in India," followed by the signature "Mohammad-Ali." Below this, printed in a gothic-style font, is the title "Docker and Kubernetes Security." Underneath the title is a black illustration of a stylized archer, possibly a man, riding a lion-like mythological creature with a bow and arrow. The paper is placed in front of a computer monitor displaying a vibrant, blurry red and orange abstract wallpaper with a row of indistinct application icons at the bottom.

A white piece of paper features a handwritten dedication in blue ink at the top, reading "To the best Captain in India," followed by the signature "Mohammad-Ali." Below this, printed in a gothic-style font, is the title "Docker and Kubernetes Security." Underneath the title is a black illustration of a stylized archer, possibly a man, riding a lion-like mythological creature with a bow and arrow. The paper is placed in front of a computer monitor displaying a vibrant, blurry red and orange abstract wallpaper with a row of indistinct application icons at the bottom.

Thank you, @aerabi.com, for gifting a copy of your newly published book, Docker and Kubernetes Security, and for bringing it all the way from Germany to Istanbul. I will go through it soon.

If you want to learn @docker.com and Kubernetes security, I highly recommend this book.

4 months ago 5 1 1 0

Thank you very much, Eva and the whole team at @docker.com, for the award and for recognising my contribution.

4 months ago 0 0 0 0
An awards ceremony where a young man in a black "CAPTAIN SUMMIT" t-shirt and jeans accepts a blue plaque from a young woman, also in a "CAPTAIN SUMMIT" t-shirt and light jeans, who holds a microphone. Behind them, a projector screen displays "Congratulations!" and a photo of the man, identified as "Pradumna Saraf."

An awards ceremony where a young man in a black "CAPTAIN SUMMIT" t-shirt and jeans accepts a blue plaque from a young woman, also in a "CAPTAIN SUMMIT" t-shirt and light jeans, who holds a microphone. Behind them, a projector screen displays "Congratulations!" and a photo of the man, identified as "Pradumna Saraf."

A clear glass plaque stands on a light wooden desk. Etched onto the glass are the words "Tip o' the Captain's Hat" above a circular emblem featuring a cartoon bird wearing a captain's hat, flanked by stylized wings. Below the emblem, the words "-docker- Captains" are etched. The background includes a light wall and a blurred dark monitor to the right.

A clear glass plaque stands on a light wooden desk. Etched onto the glass are the words "Tip o' the Captain's Hat" above a circular emblem featuring a cartoon bird wearing a captain's hat, flanked by stylized wings. Below the emblem, the words "-docker- Captains" are etched. The background includes a light wall and a blurred dark monitor to the right.

One of the unexpected things that happened at Docker Summit in Istanbul was that I won the Most Active Docker Captain award. It was a weird and happy moment because going from just passionately using Docker to actually winning an award from them feels like a full-circle moment.
@docker.com

4 months ago 0 0 1 0

Also funny thing, I never won any award during my studies or academics. I was telling this to my mother, and she said the current ones are way more important and precious :)

Thank you very much, Eva and the whole team at Docker, for the award and for recognising my contribution.

4 months ago 0 0 0 0