Environment
Outcomes
You will install the toolchain, run a Go test, start the platform, and know where each repository lives.
Toolchain
Install:
- Go 1.25 or newer;
- Git;
- Docker Desktop with Docker Compose v2;
- GNU Make;
- an editor with gopls.
Verify:
go version
go env GOMOD GOWORK GOPATH
gofmt -h
go test -h
docker compose version
git --version
make --version
Configure the editor to use gopls, format on save, and organize imports. Do not install a separate formatter that fights gofmt.
First Go module
mkdir hello-dx
cd hello-dx
go mod init example.com/hello-dx
go mod edit -go=1.25
Create a function and table-driven test, then run:
gofmt -w .
go test ./...
go vet ./...
Platform workspace
In the orchestration repository:
make dev-clone
make dev-up
make dev-init-dbs
make dev-demo
Service repositories are cloned inside the workspace because the Compose build context needs them together. They remain independent Git repositories.
Useful daily commands:
make dev-pull
make dev-status
make dev-logs SVC=dx-gateway-go
make dev-token
make dev-down
Checkpoint
- What is the difference between GOPATH, GOMOD, and GOWORK?
- Why does gofmt have no project-specific style configuration?
- Can you run make dev-demo and identify the first failing component from logs?
- Can you show which Git repository owns a service file?
Do not continue until go test and the local platform health checks run successfully.