mirror of
https://github.com/casjaysdevdocker/gitea
synced 2025-12-14 02:07:10 -05:00
🗃️ Update codebase 🗃️
README.md rootfs/tmp/etc/gitea/app.ini rootfs/usr/local/bin/entrypoint.sh rootfs/usr/local/etc/docker/init.d/05-dockerd.sh rootfs/usr/local/etc/docker/init.d/08-gitea.sh
This commit is contained in:
72
README.md
72
README.md
@@ -1,8 +1,34 @@
|
|||||||
## 👋 Welcome to gitea 🚀
|
## 👋 Welcome to gitea 🚀
|
||||||
|
|
||||||
|
Self-hosted Git service with built-in CI/CD (Gitea Actions), Docker-in-Docker support, and SSH access.
|
||||||
|
|
||||||
|
## Features
|
||||||
|
|
||||||
|
- 🚀 **Latest Gitea** - Auto-downloads latest version on build
|
||||||
|
- 🐳 **Docker-in-Docker** - Run Docker inside the container for CI/CD
|
||||||
|
- ⚙️ **Gitea Actions** - Built-in CI/CD with act_runner (5 parallel runners by default)
|
||||||
|
- 🔐 **SSH Server** - Git operations over SSH (port 22/7833)
|
||||||
|
- 📦 **Package Registry** - Container, NPM, Maven, PyPI, and more
|
||||||
|
- 💾 **SQLite** - Zero-config database (PostgreSQL/MySQL supported)
|
||||||
|
- 🔧 **Easy Configuration** - Environment variable driven setup
|
||||||
|
|
||||||
|
## Quick Start
|
||||||
|
|
||||||
|
### Simple Run (HTTP only)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--privileged \
|
||||||
|
--name gitea \
|
||||||
|
-p 80:80 \
|
||||||
|
-p 22:22 \
|
||||||
|
-v "$HOME/.local/share/srv/docker/casjaysdevdocker-gitea/rootfs/data:/data:z" \
|
||||||
|
-v "$HOME/.local/share/srv/docker/casjaysdevdocker-gitea/rootfs/config:/config:z" \
|
||||||
|
casjaysdevdocker/gitea:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
Access Gitea at: `http://localhost`
|
||||||
|
|
||||||
Description
|
|
||||||
|
|
||||||
|
|
||||||
## Install my system scripts
|
## Install my system scripts
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
@@ -34,8 +60,34 @@ docker run -d \
|
|||||||
casjaysdevdocker/gitea:latest
|
casjaysdevdocker/gitea:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
## via docker-compose
|
## Environment Variables
|
||||||
|
|
||||||
|
| Variable | Default | Description |
|
||||||
|
|----------|---------|-------------|
|
||||||
|
| `GITEA_EMAIL_CONFIRM` | `false` | Enable email notifications |
|
||||||
|
| `EMAIL_RELAY` | `172.17.0.1` | SMTP relay (Docker host gateway) |
|
||||||
|
| `SERVER_ADMIN` | `administrator@$HOSTNAME` | Admin email address |
|
||||||
|
| `RUNNERS_START` | `5` | Number of parallel CI/CD runners |
|
||||||
|
| `GITEA_HOSTNAME` | `$HOSTNAME` | Gitea server hostname |
|
||||||
|
| `TZ` | `America/New_York` | Timezone |
|
||||||
|
|
||||||
|
### Enable Email Notifications
|
||||||
|
|
||||||
|
```bash
|
||||||
|
docker run -d \
|
||||||
|
--privileged \
|
||||||
|
--name gitea \
|
||||||
|
-e GITEA_EMAIL_CONFIRM=yes \
|
||||||
|
-e EMAIL_RELAY=smtp.gmail.com \
|
||||||
|
-e SERVER_ADMIN=admin@example.com \
|
||||||
|
-p 80:80 -p 22:22 \
|
||||||
|
-v "$HOME/.local/share/srv/docker/casjaysdevdocker-gitea/rootfs/data:/data:z" \
|
||||||
|
-v "$HOME/.local/share/srv/docker/casjaysdevdocker-gitea/rootfs/config:/config:z" \
|
||||||
|
casjaysdevdocker/gitea:latest
|
||||||
|
```
|
||||||
|
|
||||||
|
## via docker-compose
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
version: "2"
|
version: "2"
|
||||||
services:
|
services:
|
||||||
@@ -65,13 +117,13 @@ OR
|
|||||||
git clone "https://github.com/casjaysdevdocker/gitea" "$HOME/Projects/github/casjaysdevdocker/gitea"
|
git clone "https://github.com/casjaysdevdocker/gitea" "$HOME/Projects/github/casjaysdevdocker/gitea"
|
||||||
```
|
```
|
||||||
|
|
||||||
## Build container
|
## Build container
|
||||||
|
|
||||||
```shell
|
```shell
|
||||||
cd "$HOME/Projects/github/casjaysdevdocker/gitea"
|
cd "$HOME/Projects/github/casjaysdevdocker/gitea"
|
||||||
buildx
|
buildx
|
||||||
```
|
```
|
||||||
|
|
||||||
## Authors
|
## Authors
|
||||||
|
|
||||||
🤖 casjay: [Github](https://github.com/casjay) 🤖
|
🤖 casjay: [Github](https://github.com/casjay) 🤖
|
||||||
|
|||||||
@@ -166,6 +166,9 @@ ENDLESS_TASK_TIMEOUT = 3h
|
|||||||
ABANDONED_JOB_TIMEOUT = 24h
|
ABANDONED_JOB_TIMEOUT = 24h
|
||||||
SKIP_WORKFLOW_STRINGS = [skip ci],[ci skip],[no ci],[skip actions],[actions skip]
|
SKIP_WORKFLOW_STRINGS = [skip ci],[ci skip],[no ci],[skip actions],[actions skip]
|
||||||
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
[actions.artifacts]
|
||||||
|
ENABLED = true
|
||||||
|
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
[storage.actions_log]
|
[storage.actions_log]
|
||||||
STORAGE_TYPE = local
|
STORAGE_TYPE = local
|
||||||
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
@@ -174,9 +177,16 @@ ENABLED = REPLACE_GITEA_EMAIL
|
|||||||
SMTP_ADDR = REPLACE_EMAIL_RELAY
|
SMTP_ADDR = REPLACE_EMAIL_RELAY
|
||||||
SMTP_PORT = 25
|
SMTP_PORT = 25
|
||||||
FROM = REPLACE_SERVER_ADMIN
|
FROM = REPLACE_SERVER_ADMIN
|
||||||
USER =
|
USER =
|
||||||
PASSWD =
|
PASSWD =
|
||||||
PROTOCOL =
|
PROTOCOL =
|
||||||
|
SEND_AS_PLAIN_TEXT = false
|
||||||
|
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
[email.incoming]
|
||||||
|
ENABLED = false
|
||||||
|
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
|
[notify.email]
|
||||||
|
ENABLED = REPLACE_GITEA_EMAIL_CONFIRM
|
||||||
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
; ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||||
[openid]
|
[openid]
|
||||||
ENABLE_OPENID_SIGNIN = true
|
ENABLE_OPENID_SIGNIN = true
|
||||||
|
|||||||
@@ -223,6 +223,13 @@ mkdir -p "/usr/local/etc/docker/exec"
|
|||||||
touch "/data/logs/start.log"
|
touch "/data/logs/start.log"
|
||||||
touch "/data/logs/entrypoint.log"
|
touch "/data/logs/entrypoint.log"
|
||||||
# - - - - - - - - - - - - - - - - - - - - - - - - -
|
# - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
# Enable cgroup v2 delegation for Docker-in-Docker
|
||||||
|
if [ -f "/sys/fs/cgroup/cgroup.controllers" ]; then
|
||||||
|
if [ -w "/sys/fs/cgroup/cgroup.subtree_control" ]; then
|
||||||
|
cat /sys/fs/cgroup/cgroup.controllers > /sys/fs/cgroup/cgroup.subtree_control 2>/dev/null || true
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
# - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
# fix permissions
|
# fix permissions
|
||||||
chmod -f 777 "/run"
|
chmod -f 777 "/run"
|
||||||
chmod -f 777 "/tmp"
|
chmod -f 777 "/tmp"
|
||||||
|
|||||||
@@ -227,6 +227,14 @@ __run_pre_execute_checks() {
|
|||||||
__banner "$pre_execute_checks_MessageST"
|
__banner "$pre_execute_checks_MessageST"
|
||||||
# Put command to execute in parentheses
|
# Put command to execute in parentheses
|
||||||
{
|
{
|
||||||
|
# Fix cgroup v2 delegation for Docker-in-Docker
|
||||||
|
if [ -f "/sys/fs/cgroup/cgroup.controllers" ]; then
|
||||||
|
echo "Enabling cgroup v2 delegation for Docker-in-Docker"
|
||||||
|
# Enable all available controllers at root
|
||||||
|
if [ -w "/sys/fs/cgroup/cgroup.subtree_control" ]; then
|
||||||
|
cat /sys/fs/cgroup/cgroup.controllers > /sys/fs/cgroup/cgroup.subtree_control 2>/dev/null || true
|
||||||
|
fi
|
||||||
|
fi
|
||||||
[ -L "/config/docker/daemon.json" ] && unlink "/config/docker/daemon.json"
|
[ -L "/config/docker/daemon.json" ] && unlink "/config/docker/daemon.json"
|
||||||
if [ -n "$DOCKER_REGISTRIES" ]; then
|
if [ -n "$DOCKER_REGISTRIES" ]; then
|
||||||
local set_reg=""
|
local set_reg=""
|
||||||
|
|||||||
@@ -182,9 +182,9 @@ GITEA_SQL_HOST="${GITEA_SQL_HOST:-localhost}"
|
|||||||
GITEA_WORK_DIR="${GITEA_WORK_DIR:-$WORK_DIR}"
|
GITEA_WORK_DIR="${GITEA_WORK_DIR:-$WORK_DIR}"
|
||||||
TZ="${GITEA_TZ:-${TZ:-America/New_York}}"
|
TZ="${GITEA_TZ:-${TZ:-America/New_York}}"
|
||||||
SERVICE_PROTOCOL="${GITEA_PROTO:-$SERVICE_PROTOCOL}"
|
SERVICE_PROTOCOL="${GITEA_PROTO:-$SERVICE_PROTOCOL}"
|
||||||
EMAIL_RELAY="${GITEA_EMAIL_RELAY:-${EMAIL_RELAY:-localhost}}"
|
EMAIL_RELAY="${GITEA_EMAIL_RELAY:-${EMAIL_RELAY:-172.17.0.1}}"
|
||||||
SERVER_SITE_TITLE="${GITEA_NAME:-${SERVER_SITE_TITLE:-SelfHosted GIT Server}}"
|
SERVER_SITE_TITLE="${GITEA_NAME:-${SERVER_SITE_TITLE:-SelfHosted GIT Server}}"
|
||||||
SERVER_ADMIN="${GITEA_ADMIN:-${SERVER_ADMIN:-gitea@${DOMAINNAME:-$GITEA_HOSTNAME}}}"
|
SERVER_ADMIN="${GITEA_ADMIN:-${SERVER_ADMIN:-administrator@${HOSTNAME}}}"
|
||||||
GITEA_SERVER="${ENV_GITEA_SERVER:-$GITEA_SERVER}"
|
GITEA_SERVER="${ENV_GITEA_SERVER:-$GITEA_SERVER}"
|
||||||
GITEA_EMAIL_CONFIRM="${GITEA_EMAIL_CONFIRM:-false}"
|
GITEA_EMAIL_CONFIRM="${GITEA_EMAIL_CONFIRM:-false}"
|
||||||
GITEA_SQL_DB_HOST="${GITEA_SQL_DB_HOST:-localhost}"
|
GITEA_SQL_DB_HOST="${GITEA_SQL_DB_HOST:-localhost}"
|
||||||
|
|||||||
Reference in New Issue
Block a user