Dev Container / Codespaces environment with Go 1.25 and SQL Server 2025.
VS Code: Open repo → click "Reopen in Container" when prompted.
Codespaces: Click "Code" → "Codespaces" → "Create codespace".
First build takes ~5 minutes.
| Alias | What it does |
|---|---|
gtest |
Run tests |
ginstall |
Build and install sqlcmd to ~/bin |
glint |
Run golangci-lint |
sql |
Connect to SQL Server (go-sqlcmd) |
sql-legacy |
Connect with legacy ODBC sqlcmd |
test-db |
Test database connection |
- Server:
localhost,1433 - User:
sa - Password:
$SQLCMDPASSWORDenv var (SqlCmd@2025!for local dev) - Database:
masterorSqlCmdTest
Port 1433 is forwarded — connect from host tools (ADS, SSMS) using same credentials.
- go-sqlcmd:
~/bin/sqlcmd(default in PATH, usesqlalias) - Legacy ODBC:
/opt/mssql-tools18/bin/sqlcmd(usesql-legacyalias)
Change SQL version: Edit docker-compose.yml image tag.
Add setup scripts: Edit .devcontainer/mssql/setup.sql.
Change password: Update docker-compose.yml and devcontainer.json.
- ARM64 (Apple Silicon): Use GitHub Codespaces instead - SQL Server has no native ARM64 images
- SQL Server not starting: Check
docker logs $(docker ps -qf "name=db"). Needs 2GB+ RAM - Connection refused: Wait ~30s for SQL Server to start
- sqlcmd not found: Run
ginstall