valkey + gitea + long build
This commit is contained in:
@@ -0,0 +1,56 @@
|
||||
APP_NAME = Gitea
|
||||
RUN_USER = git
|
||||
RUN_MODE = prod
|
||||
WORK_PATH = /mnt/volume/gitea
|
||||
|
||||
[server]
|
||||
PROTOCOL = http
|
||||
DOMAIN = %%GITEA_DOMAIN%%
|
||||
ROOT_URL = %%GITEA_ROOT_URL%%
|
||||
HTTP_ADDR = 0.0.0.0
|
||||
HTTP_PORT = 3000
|
||||
SSH_DOMAIN = %%GITEA_DOMAIN%%
|
||||
START_SSH_SERVER = true
|
||||
SSH_PORT = 2222
|
||||
SSH_LISTEN_PORT = 2222
|
||||
LFS_START_SERVER = true
|
||||
APP_DATA_PATH = /mnt/volume/gitea/data
|
||||
DISABLE_SSH = false
|
||||
LFS_JWT_SECRET = %%LFS_JWT_SECRET%%
|
||||
|
||||
[database]
|
||||
DB_TYPE = postgres
|
||||
HOST = %%DB_HOST%%:%%DB_PORT%%
|
||||
NAME = %%DB_NAME%%
|
||||
USER = %%DB_USER%%
|
||||
PASSWD = %%DB_PASSWORD%%
|
||||
SSL_MODE = disable
|
||||
SCHEMA = public
|
||||
|
||||
[repository]
|
||||
ROOT = /mnt/volume/gitea/data/gitea-repositories
|
||||
|
||||
[lfs]
|
||||
PATH = /mnt/volume/gitea/data/lfs
|
||||
|
||||
[log]
|
||||
ROOT_PATH = /mnt/volume/gitea/log
|
||||
MODE = console
|
||||
LEVEL = info
|
||||
|
||||
[service]
|
||||
DISABLE_REGISTRATION = true
|
||||
REQUIRE_SIGNIN_VIEW = false
|
||||
DEFAULT_KEEP_EMAIL_PRIVATE = true
|
||||
DEFAULT_ALLOW_CREATE_ORGANIZATION = true
|
||||
|
||||
[security]
|
||||
INSTALL_LOCK = true
|
||||
SECRET_KEY = %%SECRET_KEY%%
|
||||
INTERNAL_TOKEN = %%INTERNAL_TOKEN%%
|
||||
|
||||
[oauth2]
|
||||
JWT_SECRET = %%JWT_SECRET%%
|
||||
|
||||
[session]
|
||||
PROVIDER = file
|
||||
Executable
+16
@@ -0,0 +1,16 @@
|
||||
#!/usr/bin/env bash
|
||||
# Generates JWT_SECRET, SECRET_KEY and INTERNAL_TOKEN in the exact format Gitea expects.
|
||||
# Run once, then paste the three lines into Zerops as secret env vars for the gitea service.
|
||||
set -euo pipefail
|
||||
|
||||
GITEA_VERSION="${GITEA_VERSION:-1.26.1}"
|
||||
BIN=$(mktemp)
|
||||
trap 'rm -f "$BIN"' EXIT
|
||||
|
||||
wget -qO "$BIN" "https://dl.gitea.com/gitea/${GITEA_VERSION}/gitea-${GITEA_VERSION}-linux-amd64"
|
||||
chmod +x "$BIN"
|
||||
|
||||
echo "JWT_SECRET=$("$BIN" generate secret JWT_SECRET)"
|
||||
echo "SECRET_KEY=$("$BIN" generate secret SECRET_KEY)"
|
||||
echo "INTERNAL_TOKEN=$("$BIN" generate secret INTERNAL_TOKEN)"
|
||||
echo "LFS_JWT_SECRET=$("$BIN" generate secret LFS_JWT_SECRET)"
|
||||
@@ -0,0 +1,44 @@
|
||||
zerops:
|
||||
- setup: gitea
|
||||
build:
|
||||
base: ubuntu@24.04
|
||||
deployFiles: app.ini
|
||||
run:
|
||||
base: ubuntu@24.04
|
||||
ports:
|
||||
- port: 3000
|
||||
httpSupport: true
|
||||
- port: 2222
|
||||
envVariables:
|
||||
GITEA_VERSION: 1.26.1
|
||||
GITEA_WORK_DIR: /mnt/volume/gitea
|
||||
GITEA_DOMAIN: git.matejpavlicek.cz
|
||||
GITEA_ROOT_URL: https://git.matejpavlicek.cz
|
||||
DB_HOST: db
|
||||
DB_PORT: 5432
|
||||
DB_NAME: giteadb
|
||||
DB_USER: gitea
|
||||
envReplace:
|
||||
delimiter: "%%"
|
||||
target:
|
||||
- app.ini
|
||||
prepareCommands:
|
||||
- sudo apt-get update
|
||||
- sudo apt-get install -y --no-install-recommends git ca-certificates gettext-base wget gpg
|
||||
- wget -q -O /tmp/gitea https://dl.gitea.com/gitea/${GITEA_VERSION}/gitea-${GITEA_VERSION}-linux-amd64
|
||||
- wget -q -O /tmp/gitea.asc https://dl.gitea.com/gitea/${GITEA_VERSION}/gitea-${GITEA_VERSION}-linux-amd64.asc
|
||||
- gpg --keyserver hkps://keys.openpgp.org --recv 7C9E68152594688862D62AF62D9AE806EC1592E2
|
||||
- gpg --verify /tmp/gitea.asc /tmp/gitea
|
||||
- sudo install -m 755 /tmp/gitea /usr/local/bin/gitea
|
||||
- sudo groupadd --system git
|
||||
- sudo useradd --system --gid git --shell /bin/bash --home-dir /home/git --create-home git
|
||||
- sudo mkdir -p /etc/gitea
|
||||
- sudo chown root:git /etc/gitea
|
||||
- sudo chmod 770 /etc/gitea
|
||||
initCommands:
|
||||
- until mountpoint -q /mnt/volume; do sleep 1; done
|
||||
- sudo mkdir -p /mnt/volume/gitea/{custom,data,indexers,public,log}
|
||||
- sudo chown -R git:git /mnt/volume/gitea
|
||||
- sudo chmod -R 750 /mnt/volume/gitea
|
||||
- sudo install -m 660 -o root -g git /var/www/app.ini /etc/gitea/app.ini
|
||||
start: sudo -u git -E /usr/local/bin/gitea web --config /etc/gitea/app.ini
|
||||
Reference in New Issue
Block a user