e071084ebe
govulncheck / govulncheck (push) Waiting to run
Harness (E2E) / Harnesses (mock LLM) (push) Waiting to run
Harness (E2E) / Provider harnesses (live LLM conformance) (push) Waiting to run
Lint / golangci-lint (push) Waiting to run
Run Tests / Unit Tests (push) Waiting to run
Run Tests / Etcd Integration Tests (push) Waiting to run
1.8 KiB
1.8 KiB
layout
| layout |
|---|
| default |
Deployment Guide
This is a quick reference for deploying go-micro services. For the full guide, see the Deployment documentation.
Workflow
micro run → Develop locally with hot reload
micro build → Compile production binaries
micro deploy → Push to a remote Linux server via SSH + systemd
micro server → Optional: production web dashboard with auth
Quick Start
# Build binaries for Linux
micro build --os linux
# Deploy to server (builds automatically if needed)
micro deploy user@your-server
First-Time Server Setup
On your server (any Linux with systemd):
curl -fsSL https://go-micro.dev/install.sh | sh
sudo micro init --server
This creates /opt/micro/{bin,data,config} and a systemd template for managing services.
Deploy
micro deploy user@your-server
This builds for linux/amd64, copies binaries to /opt/micro/bin/, configures systemd services, and verifies they're running.
Named Targets
Add deploy targets to micro.mu:
deploy prod
ssh deploy@prod.example.com
deploy staging
ssh deploy@staging.example.com
Then: micro deploy prod
Managing Services
micro status --remote user@server # Check status
micro logs --remote user@server # View logs
micro logs myservice --remote user@server -f # Follow logs
Docker (Optional)
micro build --docker # Build Docker images
micro build --docker --push # Build and push
micro build --compose # Generate docker-compose.yml
Full Documentation
See the Deployment documentation for complete details including SSH setup, environment variables, security best practices, and troubleshooting.