# 简单部署与打包

URL: https://caijiao.org/go/07-test/07-deploy-package
Source: docs/go/07-test/07-deploy-package.md
Description: 本节介绍 Go 应用的简单部署与打包方法，帮助将程序打包为可执行文件并部署到目标环境。

## 1. 构建可执行文件

使用 `go build` 构建当前平台或通过交叉编译生成目标平台可执行文件：

```bash
go build -o myapp
```

或交叉编译：

```bash
GOOS=linux GOARCH=amd64 go build -o myapp
```

## 2. 添加配置与资源文件

将程序运行所需的配置文件、静态资源一并打包。例如：

```
myapp/
├── config.yaml
├── static/
└── myapp (可执行文件)
```

## 3. 部署方式示例

### 本地部署

直接在服务器上传构建产物：

```bash
scp myapp user@server:/app/
```

### 运行服务

在服务器上执行：

```bash
./myapp
```

可使用 `nohup` 或 `systemd` 保持后台运行。

### 压缩打包

使用 tar 打包目录方便传输：

```bash
tar -czf myapp.tar.gz myapp config.yaml static/
```

## 4. 注意事项

- 保证运行环境拥有执行权限
- 日志与配置路径建议使用相对路径或通过命令行参数传入

---

Go 程序部署简单，打包成独立可执行文件即可在目标系统直接运行。
