gitea+drone+mysql简单轻量级流水线部署
以下是一个使用Gitea、Drone和MySQL的简单轻量级CI/CD流水线部署示例。
- 安装MySQL数据库。
- 创建Gitea和Drone所使用的数据库和用户。
CREATE DATABASE drone;
CREATE DATABASE gitea;
CREATE USER 'drone'@'localhost' IDENTIFIED BY 'password';
CREATE USER 'gitea'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON drone.* TO 'drone'@'localhost';
GRANT ALL PRIVILEGES ON gitea.* TO 'gitea'@'localhost';
- 安装和配置Gitea。
# 下载Gitea
wget -O gitea https://dl.gitea.io/gitea/1.17.2/gitea-1.17.2-linux-amd64
chmod +x gitea
# 创建配置文件
touch custom/conf/app.ini
编辑custom/conf/app.ini
,添加以下内容:
[database]
TYPE = mysql
HOST = 127.0.0.1:3306
NAME = gitea
USER = gitea
PASSWD = password
SSLMODE = disable
- 安装和配置Drone。
# 下载Drone
wget -O drone-server https://github.com/drone/drone/releases/download/v1.10.0/drone_1.10.0_linux_amd64
chmod +x drone-server
# 创建配置文件
touch drone.yml
drone secret --add DRONE_AGENTS=1
drone secret --add DRONE_GITEA_SERVER=http://localhost:3000
drone secret --add DRONE_GITEA_CLIENT_ID=your_client_id
drone secret --add DRONE_GITEA_CLIENT_SECRET=your_client_secret
drone secret --add DRONE_RPC_SECRET=your_rpc_secret
drone secret --add DRONE_SERVER_HOST=your_server_host
drone secret --add DRONE_SERVER_PROTO=http
drone secret --add DRONE_USER_CREATE=username:your_username,kind:admin
drone secret --add DRONE_DATABASE_DRIVER=mysql
drone secret --add DRONE_DATABASE_DATASOURCE=gitea:password@tcp(127.0.0.1:3306)/drone?parseTime=true
- 启动服务。
# 启动MySQL
service mysql start
# 启动Gitea
./gitea web
# 启动Drone Server
./drone-server &
# 启动Drone Runner
./drone-runner-docker &
确保你已经将your_client_id
, your_client_secret
, your_rpc_secret
, your_username
, 和数据库密码替换为实际的值。
这个例子提供了一个简单的部署流程,但在实际应用中你可能需要进一步配置安全性、网络设置和持久化存储等。
评论已关闭