October DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsWindows FixRecommendedWindows errors stealing your time? Find the fix fastScan stability, cleanup and performance issues.Fix NowOctober DealsAmazon USDeal season is back - check today's better picksAmazon US: current deals, useful picks and tech finds.See Picks×
Skip to content
VGSources
Blog

How to Update a Docker Image and Recreate the Container

A practical guide to pulling or rebuilding Docker images, recreating Compose and standalone containers, preserving data, and troubleshooting updates that appear not to apply.
Length9 min Posted Quest giverVGSources Team

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

For a Docker Compose service that uses an image from a registry, the reliable update sequence is:

docker compose pull SERVICE
docker compose up -d SERVICE

pull downloads the image configured for the service; up then notices the image change, stops the old container, and creates a replacement. Mounted volumes remain attached, but files stored only in the old container’s writable layer do not. If you want Compose to pull and replace the container every time, use docker compose up -d --pull always --force-recreate SERVICE.

As an Amazon Associate I earn from qualifying purchases.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What actually changes during an image update

A Docker image is an immutable package of filesystem layers and metadata. A container is a created, running instance of that image with its own writable layer, networking, environment, mounts, and startup settings. Downloading a newer image does not rewrite a container that already exists. The container must be recreated from the new image.

That distinction explains the correct order. First make the desired image available locally; then ask the orchestration command to create a container from it. Restarting an existing container only starts the old container again.

#1 Best Overall
Sale
Gaoye Blue Light Blocking Glasses
  • BLUE LIGHT BLOCKING GLASSES: Our blue light glasses for women boast UV400 protection, blocking harmful blue rays from computer screens. With these bluelight glasses women, you can enjoy gaming, reading, or watching TV with no worries of eye strain.
  • EYE RELIEF: Our blue light glasses are engineered to reduce blurry vision or strain caused by prolonged screen time. These womens blue light glasses aid in better sleep by preventing blue light from disrupting your natural sleep cycle, helping you fall asleep faster and enjoy a more restful night's sleep, making them the perfect christmas present.
  • COMFORTABLE: Crafted from durable material, our trendy blue light glasses for woman or blue light glasses men ensure long-lasting comfort. The high-transmittance lenses accessories, gamer gifts for men, help keep your eyes relaxed. Perfect stocking stuffers, gifts for gamers men, christmas gifts for men, halloween costumes.
  • LIGHTWEIGHT: These clear blue light glasses feature a lightweight frame, meaning they’ll stay comfy for long-term wear. Perfect as blue blockers glasses for women or mens blue light glasses, these non-prescription fake glasses for men can be worn throughout the day. The blue light blocking glasses women feature polycarbonate HD lenses, which are anti-reflective and restore true color.
  • WORRY-FREE PURCHASE: If you experience any issues, our support team is ready to assist you quickly. These are the perfect costume glasses for cosplay dressing up.

Docker’s docker compose up reference states: “If there are existing containers for a service, and the service’s configuration or image was changed after the container’s creation, docker compose up picks up the changes by stopping and recreating the containers (preserving mounted volumes).”

Before you replace anything

Confirm the service and image

Open compose.yaml and identify the service you intend to update. Check its image: value, any build configuration, ports, environment variables, networks, restart policy, capabilities, commands, and volume mounts. Use the service name—not the container name—in Compose commands.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

If the file says image: example/app:2.4, changing it to example/app:2.5 selects a different tag. If you use a digest, the reference identifies exact image content rather than whatever a mutable tag happens to point to later. A tag such as latest can refer to different content over time, so a version tag or digest gives a more deterministic rollout.

Protect persistent data

Put databases, uploaded files, save data, and other durable state in named volumes or bind mounts. Compose preserves those mounts when it recreates a service container. Data written only to the container’s writable layer belongs to that particular container; removing and replacing it removes that data.

Verify that the expected volume or bind mount is present in compose.yaml, and confirm that your backup can be restored before an upgrade. A backup is especially important for database migrations or application versions that may change the data format.

Decide whether the source is a registry or a Dockerfile

There are two different update paths:

  • Registry image: the service uses image: and you download a published image with docker compose pull.
  • Locally built image: the service is built from a Dockerfile in the Compose project. You need --build; pulling a registry image does not rebuild your local source.

Standard Docker Compose update procedure

1. Select the new image

Edit the service’s image: tag or digest in compose.yaml. Save the file. If the tag is unchanged but its publisher has pushed new content under that same tag, leave the file as-is and pull it; Compose can still detect that the image used by the existing container differs from the freshly pulled image.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Windex Gaming Cleaning Wipes, Pre-Moistened Wipes to Instantly Clean all Gaming Gear and Electronics, Resealable Packaging for a Freshness Lock, 25 count (Pack of 1)
  • WINDEX GAMING WIPES: effortlessly clean all your gaming gear and gaming electronics in one easy step with our new Windex Gaming Wipes
  • AMMONIA FREE: our ammonia-free formula is safe to use on all of your favorite gaming equipment like consoles, headsets, controllers, screens, keyboards, and more
  • PRE-MOISTENED WIPES: each wipe instantly removes dust, dirt, and stubborn smudges and fingerprints leaving a streak-free shine
  • ANTI-STATIC: great for cleaning and wiping down your gaming gear and electronics leaving behind no visible residue
  • COMPACT RESEALABLE PACKAGE: store your pack of Windex Gaming Wipes anywhere in your home for whenever a quick and easy wipedown is needed

2. Pull the configured image

docker compose pull SERVICE

Replace SERVICE with the service name from the Compose file. This downloads the image associated with that service. It does not stop or recreate the running container, so the old process continues using its existing image until the next step.

To update several services, run the command for each service or omit the service argument when you intentionally want to pull every configured service. Pull only what you plan to replace when minimizing downloads matters.

3. Recreate and start the service

docker compose up -d SERVICE

Compose compares the existing service container with the current image and service configuration. When either has changed, it stops the old container and creates a replacement from the new image, then starts it in detached mode. Mounted volumes are preserved and reattached.

If neither the image nor the configuration changed, Compose can leave the existing container in place. That behavior avoids unnecessary disruption while still applying a detected update.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

One command for an explicit pull and replacement

docker compose up -d --pull always --force-recreate SERVICE

--pull always requests an image pull before starting. --force-recreate tells Compose to replace the container even if it does not detect a difference. This is useful for a deliberate refresh when a mutable tag may have moved or when you want replacement to be unambiguous.

If you do not want to contact the registry on every run, use --pull missing or the default pull policy instead. Those policies avoid forcing a download each time, but they also do not guarantee that a mutable tag is refreshed on every invocation.

Rank #3
Sale
LISEN Cell Phone Stand Phone Holder for Desk, Office Decor Gadgets for Men
  • Ergonomic & Adjustable Design: Fight "text neck" and improve your posture. Designed for comfort, it offers an adjustable height (7.1in-8.5in) (1.4in adjustable range) and angle (5°-85°) Please note: cell phone stand is only 9 inches tall—the length of a standard pencil
  • Without blocking subtitles Perfect for office desk Tiktok Face Time Zoom video—this is the ultimate kitchen desk essential for phones! Perfect viewing experience while reducing neck back strain, A must-have for gamers streamers desk, and anyone who values both style and support!
  • Sleek & Stable Design fits Otterbox Case: Say goodbye to bent cables, tangles, and tip-overs! LISEN’s stylish adjustable desk phone holder features a built-in charging hole and smart cable management, keeping your phone secure and your workspace clutter-free cool gadgets for men
  • ANTI-SLIP DESIGN free hands: The under 10.00 items easy gadgets back and the bottom of this kitchen essentials for women are fully covered by anti-skid silicone, which LISEN stand up desk decor can provide maximum protection device from any scratches and slides
  • Your Perfect Viewing Companion:If your product arrives damaged or breaks within 365 days, reach out to LISEN for a quick and hassle-free solution. Struggling with assembly, like tightening the screw? We’ve got your back! Your experience matters to us. (Product including: phone Holder stand*1, screw*1, hexagon screwdriver*1, specification*1)

Check the result

After up completes, confirm that the service is running and exercise the application’s normal health check. Check startup output for configuration errors, failed migrations, permission problems, or an incompatible data format. The expected replacement keeps the declared mounts while changing the container created from the image.

Why docker compose start did not update your container

docker compose start starts previously created, stopped containers. It does not pull an image, create a new container, or apply an image change. Therefore, this sequence is insufficient:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
docker compose pull SERVICE
docker compose start SERVICE

The pull may have downloaded a new image, but start restarts the old container, which still references the image from which it was created. Use docker compose up -d SERVICE after the pull, or use the explicit --pull always --force-recreate command.

Likewise, docker compose pull by itself changes the local image cache, not a running container. And --no-recreate explicitly prevents Compose from replacing an existing container, so do not combine it with an update procedure that requires a new image.

Updating a service built from a Dockerfile

For a Compose service whose image is produced locally, rebuild and recreate it in one operation:

docker compose up -d --build --force-recreate SERVICE

--build rebuilds the Dockerfile-based image before starting the service. --force-recreate guarantees that the container is replaced even if Compose does not otherwise see a configuration difference. This path is different from docker compose pull: pull retrieves a registry image, while build constructs an image from the project’s Dockerfile and build context.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
Ledagic IC+RGBW USB Powered Led Light Bar with App & Remote Control, 2 Pack
  • Easy Installation: Our gaming lights have been designed to enhance your entertainment experience. Simply position the led light bar next to your TV or game console to create a game room environment with ease. They come with USB power and a 60 inch cord for direct mounting and mobility
  • Audio Syncing & Extensive Mode: The built-in high-sensitivity music sensor allows you to sync the TV led lights to your favorite music. Lights react and move to the beat of music, film and game audio, creating an incredible immersive sound and light experience – and all without the need for an additional hub. You can choose from 64+ patterns, including strobe, illusion, jump, energy, gradient, running, chasing, fluttering mode etc. Each mode can be applied to different scenes
  • 64+ Chasing IC+RGB & W Effect: The independent control design of IC+RGB and white all-in-one multifunctional rgbw led bar lights monitor backlight allows you to easily switch the led lights for desk between IC+RGB and white to enjoy a variety of lighting effects, you can choose white lighting mode with high brightness for better illumination when working, etc. Choose IC+RGB lighting mode when you need to create an entertaining atmosphere for the light show, 16 million colours of Color changing rgb light bar let you dance to the beat and create a dynamic party atmosphere
  • Dynamic and Dimmable Lights: 1%-full brightness free brightness adjustment gives you the flexibility to adjust dimmable led light bar for room decorations or a variety of occasions
  • USB Powered: USB light bars for room can be powered by powernank, usb charger, TV, Monitor, laptop PC mainframe, making behind TV led lighting bar easy to install in any location.TV led lights are powered by the TV usb interface / PC mainframe, can be turned on/off synchronously with TV / PC

Keep the same volume precautions as with a registry image. Rebuilding changes the image layers; it does not turn an unmounted writable-layer directory into durable storage.

Updating a container created with plain docker run

Compose can reconstruct a service from its YAML definition. A container created directly with docker run has no Compose file to reproduce its settings automatically, so record the original invocation before deleting anything.

Record every setting that must survive

  • Image name and tag or digest.
  • Published ports and exposed network connections.
  • Environment variables and environment files.
  • Named volumes and bind mounts.
  • Attached networks.
  • Restart policy.
  • Linux capabilities or other security options.
  • Entrypoint, command, working directory, and user settings.

Missing one of these can make the replacement appear broken even though the new image started successfully. In particular, omitting a mount can make an application look as if its data disappeared because it is now using an empty writable layer.

Pull, stop, remove, and run the replacement

docker pull IMAGE:TAG
docker stop CONTAINER
docker rm CONTAINER
docker run --name app -p 8080:8080 --env-file app.env -v app-data:/var/lib/app IMAGE:TAG

The final command is illustrative: repeat the original options for your container and substitute the new image reference. The pull downloads the selected image; stopping and removing discard the old container; the new docker run creates a container from the updated image. A named volume such as app-data remains available when it is mounted again.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Use a version tag or digest when you need a reproducible replacement. If you deliberately use a mutable tag, pull it immediately before recreating so the new container uses the content currently associated with that tag.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Data persistence: volumes versus the writable layer

Storage location What happens during Compose recreation What happens when the container is removed Suitable for
Named volume Preserved and reattached to the replacement Data remains unless the volume itself is explicitly removed Databases, uploads, saves, and other durable state
Bind-mounted host directory Host files remain and are mounted again Host files remain Data that must be visible or backed up on the host
Container writable layer Not carried into the replacement Removed with the old container Temporary runtime changes only

Docker’s Compose quickstart distinguishes stopping from removing: docker compose stop preserves the containers, while docker compose down removes containers and data written only to their writable layers. A normal image update that recreates a service has the same practical implication for unmounted files: copy anything important into a volume or bind mount first.

Best Value
Sale
HUANUO FlowLift™ Dual Monitor Stand, Fully Adjustable Gaming Monitor Desk Mount for 13–32″ Computer Screens, Full Motion VESA 75x75/100x100 with C-Clamp & Grommet Base, Each Arm Holds 4.4 to 19.8 lbs
  • Compatible with Wide Screens - To ensure compatibility with the dual monitor mount, your each monitor must meet three conditions at the same time: First, computer screens size range: 13 to 32 inches. Second, screen weight range: 4.4 to 19.8 lbs. Third, the back of the monitor screen must have VESA mounting holes with a pitch of 75x75mm or 100x100mm.
  • Regarding the compatibility with desks - Your desk must meet three conditions at the same time: First, desk material: Only wooden desks are recommended, plastic or glass desks cannot be used. Second, desk thickness range: 0.59" - 3.54". Third, the bottom of the desk should not have any cross beams or panels, as this will interfere with installation. We recommend carefully checking that your desk and monitors meets all above conditions before purchasing.
  • Dual C-Clamp Hold - Worried your dual monitors might wobble or slip? Our upgraded base uses a larger platform plus a dual C-clamp structure to lock the dual monitor arm firmly to your desk. Each arm safely keeps your screens steady while you type, click and game—no shaking, no sliding, just a clean and secure setup you can trust every day. It also provides Grommet Mounting installation choice, both options ensure stable and secure fixation for your 0.59" - 3.54" desk.
  • Full-Motion Adjustment For Comfortable View - Pull the screen closer when you’re deep in a spreadsheet, push it back to watch videos, or rotate to portrait for coding — moving everything smoothly with just one hand. The monitor stand offers +85°/-50° tilt, ±90° swivel and 360° rotation. Raise your monitor up to 15.75″ to support a healthy sitting posture. Whether you’re working from home, gaming through the night, or switching between video calls and documents, getting the screens to your natural line of sight helps relieve neck, shoulder and back strain so you can stay focused longer with less fatigue.
  • Keep Your Desk Organized: By lifting both screens off the desktop, this dual monitor stand opens up valuable space for your keyboard, notebook, docking station or a simple, clutter-free work area. Built-in cable management guides wires along the arms, keeping cords out of sight and out of the way. Enjoy a tidy, modern workstation that looks as good as it feels to use.

Choosing an update method

Situation Image source Command pattern Replacement behavior Persistence requirement
Compose service using a published image Registry docker compose pull SERVICE, then docker compose up -d SERVICE Automatic recreation when the image or configuration changed Use named volumes or bind mounts for durable data
Compose service requiring an unconditional refresh Registry docker compose up -d --pull always --force-recreate SERVICE Pulls first and recreates even without detected changes Mounted data is preserved; writable-layer data is not
Compose service built from project source Local Dockerfile docker compose up -d --build --force-recreate SERVICE Builds a new image and replaces the container Mounts must still contain all durable state
Standalone container Registry docker pull, stop, remove, then repeat the original docker run Manual replacement; no Compose change detection Recreate every required mount exactly

Troubleshooting an update that appears not to work

The image pulled, but the old version is still running

You probably stopped after docker compose pull. Run docker compose up -d SERVICE. If the tag is mutable and Compose does not detect a change, use --pull always --force-recreate.

The container was not replaced

Look for --no-recreate in a script or shell alias; that flag explicitly blocks replacement. Remove it, or add --force-recreate when an unconditional replacement is required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The service starts but behaves like a fresh installation

Check that the replacement uses the same named volumes or bind mounts. A changed mount path, a typo in the volume name, or a plain docker run command that omitted the original mount makes existing data unavailable to the process even though it still exists elsewhere.

The update fails during startup

Review the service’s environment, ports, command, networks, capabilities, and restart policy against the previous definition. For a Dockerfile service, make sure --build was used. For a standalone container, compare the new command with the recorded original options; recreating without one required option is a configuration change, not an image defect.

A database or application reports a schema problem

Stop and preserve the previous backup before attempting repeated starts. Confirm that the application version is compatible with the existing data, and follow that application’s migration and rollback procedure. The Docker replacement mechanism preserves mounted files; it cannot make an incompatible application schema compatible.

A cautious rollout and rollback plan

  1. Record the current image tag or digest and the Compose configuration or original docker run options.
  2. Verify backups and confirm every durable path is a named volume or bind mount.
  3. Change the image reference, or prepare the Dockerfile change.
  4. Pull or build the candidate image.
  5. Recreate one service at a time when the stack allows it, rather than changing unrelated services simultaneously.
  6. Check startup output and the application’s normal health and data access.
  7. If the new version fails, restore the previous tag or digest and recreate again. Do not delete the data volume while investigating.

Keeping the old image locally and retaining the volume makes a rollback a change of image reference followed by another recreation. Removing the volume is a separate, destructive action and is not required to update an image.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Compact command checklist

  • Registry image, normal update: docker compose pull SERVICE then docker compose up -d SERVICE.
  • Registry image, always pull and replace: docker compose up -d --pull always --force-recreate SERVICE.
  • Dockerfile image: docker compose up -d --build --force-recreate SERVICE.
  • Standalone container: pull the image, stop and remove the old container, then repeat the complete original docker run configuration with the new image.
  • Data safety: keep durable data in named volumes or bind mounts and verify backups before replacement.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More quests from Patch Notes

  1. How to Set Up a RedM (RDR2) Server in 2026: License Key, txAdmin and server.cfg, Step by StepBlog11min
  2. Best RedM (RDR2) Server Hosting in 2026: Comparing Four Hosts on Slots, Memory and PriceBlog10min
  3. How to Host a Mindustry Server in 2026: server-release.jar, Port 6567 and the Commands That MatterBlog7min
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.