Push Data to Remote Storage
Store datasets in S3 or GCS with a DVC remote.
Push Data to Remote Storage is a free MLOps Academy lesson on CoddyKit — lesson 3 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the MLOps Academy learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.
The Cache Is Only Local
So far your data lives in DVC's local cache on one machine. Teammates and CI cannot reach it, so you need a shared place to store it.
Meet the DVC Remote
A DVC remote is cloud or shared storage where your data cache is uploaded. Think of it like a Git remote, but for the heavy data instead of code.
Many Backends Supported
DVC speaks to S3, Google Cloud Storage, Azure, SSH, and even a plain shared folder. You pick whatever storage your team already uses. ☁️
Add an S3 Remote
Use dvc remote add to register storage. The -d flag marks it as the default so push and pull use it automatically.
dvc remote add -d storage s3://my-bucket/dvcstoreCommit the Remote Config
The remote setting lives in .dvc/config. Commit it to Git so every teammate inherits the same remote without extra setup.
git add .dvc/config
git commit -m "Add S3 DVC remote"Credentials Stay Out of Git
DVC reads cloud credentials from your environment or AWS profile, never from the committed config. Secrets stay safe and out of version control.
export AWS_ACCESS_KEY_ID=...
export AWS_SECRET_ACCESS_KEY=...Push Data Up
Run dvc push to upload everything in your cache to the remote. Only files not already there are sent, so it stays fast.
dvc pushPush and Git Push Together
A safe habit: push data first, then push code. That way the .dvc pointers in Git always point to data that already exists in the remote.
dvc push
git pushTeammates Pull Data Down
After cloning and git pull, a colleague runs dvc pull to download the exact datasets the .dvc files reference. Code and data reunite.
git clone <repo>
dvc pullFetch vs Pull
dvc fetch downloads data into the cache only, while dvc pull also restores it into your working folder. Pull is fetch plus checkout in one step.
Dedup Saves Bandwidth
Because the remote is content-addressed, unchanged files are never re-uploaded. Push only the bytes that are genuinely new. 🚀
Quick Check
Which command sends your tracked data from the local cache up to shared storage?
Recap
You added a DVC remote, committed its config, and used dvc push to upload data. Teammates run dvc pull to fetch the exact datasets your pointers reference.
Frequently asked questions
Is the “Push Data to Remote Storage” lesson free?
Yes — the full text of “Push Data to Remote Storage” is free to read here on the web, and the MLOps Academy course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the MLOps Academy course, upgrade to CoddyKit PRO.
What will I learn in “Push Data to Remote Storage”?
Store datasets in S3 or GCS with a DVC remote. You practise MLOps Academy with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.
Do I need any experience to start MLOps Academy?
No prior experience is required. MLOps Academy on CoddyKit is structured for beginners through advanced learners; this is — lesson 3 of 4, so you can start here or from the beginning and move at your own pace.
How long does the “Push Data to Remote Storage” lesson take?
Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.
Can I write and run code in this MLOps Academy lesson?
Yes. Every MLOps Academy lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.
All lessons in this course
- Why Git Alone Cannot Version Data
- Initialize DVC and Track a Dataset
- Push Data to Remote Storage
- Roll Back to an Earlier Dataset