Gazebo Simulation Setup
This guide walks you through setting up the Gazebo simulation used in the Your First Project tutorial.
Prerequisites
- Docker Desktop installed and running
- ~5GB disk space for the Docker image
Step 1: Pull the Docker Image
The simulation runs in a Docker container with Gazebo Harmonic and viam-server pre-installed.
docker pull ghcr.io/viamrobotics/can-inspection-simulation:latest-local
This downloads the pre-built image, which takes about a minute depending on your internet connection.
Step 2: Start the Container
docker run --name gz-station1 -d \
-p 8080:8080 -p 8081:8081 -p 8443:8443 \
ghcr.io/viamrobotics/can-inspection-simulation:latest-local
Step 3: Verify the Simulation
Open your browser to http://localhost:8081
You should see two live camera feeds from the inspection station:

Step 4: Create a Machine in Viam
Go to app.viam.com and create a free account or log in
Click the Locations tab
Click + Add machine, name it
inspection-station-1, and click Add machine
Step 5: Configure Machine Credentials
In the Viam app, click the Awaiting setup button on your new machine and click Machine cloud credentials to copy the credentials JSON

In the simulation viewer, click the Configuration button in the upper right corner

Paste your machine’s credentials into the Viam Configuration (viam.json) text area and click Update and Restart

A green banner will confirm the configuration was updated successfully and the status indicator will change to Running.

Step 6: Verify Machine Connection
Go back to your machine’s page in the Viam app. The status indicator should now show Live.

Ready to Continue
Once your machine shows Live in the Viam app, you’re ready to continue with the tutorial.
Continue to Part 1: Vision Pipeline →
Was this page helpful?
Glad to hear it! If you have any other feedback please let us know:
We're sorry about that. To help us improve, please tell us what we can do better:
Thank you!