gitea#

gitea#

官网地址#

https://docs.gitea.com/zh-cn/ Gitea是一个轻量级的DevOps平台软件。与GitLab类似。最初是从Gogs分支而来。

安装#

数据库准备#

CREATE DATABASE giteadb CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_bin';
GRANT ALL PRIVILEGES ON giteadb.* TO 'gitea';
FLUSH PRIVILEGES;

二进制安装#

下载页面:https://dl.gitea.com/gitea/

# 下载
wget -O gitea https://dl.gitea.com/gitea/1.26.1/gitea-1.26.1-linux-amd64
chmod +x gitea
# 创建工作路径
mkdir -p /var/lib/gitea/{custom,data,log}
chown -R git:git /var/lib/gitea/
chmod -R 750 /var/lib/gitea/
mkdir /etc/gitea
chown root:git /etc/gitea
chmod 770 /etc/gitea
# 配置文件
RUN_USER = gitea
WORK_PATH = /var/lib/gitea
APP_NAME = git
RUN_MODE = prod

[repository]
ROOT = /var/lib/gitea/repositories
DISABLE_HTTP_GIT = false

[server]
DOMAIN = gitea.notesync.cn
HTTP_ADDR = 0.0.0.0
HTTP_PORT = 3000
ROOT_URL = https://gitea.notesync.cn/
APP_DATA_PATH = /var/lib/gitea/data
SSH_DOMAIN = gitea.notesync.cn

DISABLE_REGISTRATION = true
SHOW_REGISTRATION_BUTTON = false

[log]
MODE = file
LEVEL = info
ROOT_PATH = /var/log/gitea/log

[database]
DB_TYPE = mysql
HOST = 127.0.0.1:3306
NAME = giteadb
USER = gitea
PASSWD = gitea
SSL_MODE = disable


[service]
REGISTER_EMAIL_CONFIRM = false
ENABLE_NOTIFY_MAIL = false
DISABLE_REGISTRATION = true
ALLOW_ONLY_EXTERNAL_REGISTRATION = false
ENABLE_CAPTCHA = false
REQUIRE_SIGNIN_VIEW = false
DEFAULT_KEEP_EMAIL_PRIVATE = false
DEFAULT_ALLOW_CREATE_ORGANIZATION = true
DEFAULT_ENABLE_TIMETRACKING = true
NO_REPLY_ADDRESS = noreply.gitea.notesync.cn

DEFAULT_PRIVATE = private
FORCE_PRIVATE = true
DEFAULT_PUSH_CREATE_PRIVATE = true
#/etc/systemd/system/gitea.service
[Unit]
Description=Gitea
After=syslog.target
After=network.target

[Service]
RestartSec=3s
Type=simple
User=gitea
Group=gitea
WorkingDirectory=/var/lib/gitea/

ExecStart=/var/lib/gitea/gitea web --config /etc/gitea/config/app.ini
Restart=always
Environment=USER=gitea GITEA_WORK_DIR=/var/lib/gitea

[Install]
WantedBy=multi-user.target

act-runner#

文档地址#

https://docs.gitea.com/zh-cn/usage/actions/overview

# /etc/systemd/system/act-runner.service
[Unit]
Description=Gitea Act Runner
After=network.target

[Service]
WorkingDirectory=/var/lib/act_runner
ExecStart=/var/lib/act_runner/act_runner daemon --config /var/lib/act_runner/act_runner.yaml
Restart=always
User=root

[Install]
WantedBy=multi-user.target
#  act_runner.yaml
log:
  level: info

runner:
  file: .runner
  capacity: 1
  envs:
    A_TEST_ENV_NAME_1: a_test_env_value_1
    A_TEST_ENV_NAME_2: a_test_env_value_2
  env_file: .env
  timeout: 3h
  shutdown_timeout: 0s
  insecure: false
  fetch_timeout: 5s
  fetch_interval: 2s
  fetch_interval_max: 60s
  log_report_interval: 5s
  log_report_max_latency: 3s
  log_report_batch_size: 100
  state_report_interval: 5s
  github_mirror: ''
  labels:
    - "notesync"

cache:
  dir: ""
  host: ""
  port: 0
  external_server: ""
host:
  workdir_parent: /var/lib/act_runner/workspace

metrics:
  addr: "127.0.0.1:9101"