jason 755b3db301 🐛 Fix all Gitea v1.26 deprecated config settings 🐛
Resolve all deprecation warnings emitted at runtime by updating
app.ini to use current key names and locations.
- rootfs/tmp/etc/gitea/app.ini: move X_FRAME_OPTIONS from [cors] to [security] (deprecatedSetting v1.26.0)
- rootfs/tmp/etc/gitea/app.ini: remove [picture].DISABLE_GRAVATAR (deprecatedSettingDB since v1.18, use admin panel)
- rootfs/tmp/etc/gitea/app.ini: remove [picture].ENABLE_FEDERATED_AVATAR (deprecatedSettingDB since v1.18, use admin panel)
- rootfs/tmp/etc/gitea/app.ini: rename [lfs].LFS_CONTENT_PATH → PATH (was silently ignored; correct key is PATH)
- rootfs/tmp/etc/gitea/app.ini: rename [git].MAX_GIT_DIFF_LINE_CHARACTER_COUNT → MAX_GIT_DIFF_LINE_CHARACTERS (correct struct field name)
- rootfs/tmp/etc/gitea/app.ini: remove LOG_ROTATE/DAILY_ROTATE/MAX_DAYS from [log] root section (only valid in file-writer sub-sections; dead config with MODE=console)

.claude/settings.local.json
rootfs/tmp/etc/gitea/app.ini
2026-05-24 21:18:57 -04:00
2026-05-12 20:06:34 -04:00
🦈🏠🐜 Initial Commit 🐜🦈🏠
2025-09-16 23:50:36 -04:00
2026-05-12 20:06:34 -04:00
2026-05-12 20:06:34 -04:00
2026-05-12 20:06:34 -04:00
2026-05-12 20:06:34 -04:00
2026-05-12 20:06:34 -04:00

gitea

An all-in-one Alpine-based Docker image that bundles Gitea (self-hosted Git service), Docker-in-Docker (dockerd), and act_runner (Gitea Actions CI runner) into a single container. Designed for teams that want a complete self-hosted Git + CI/CD stack without orchestrating multiple containers. Gitea is pre-configured with Actions enabled, SSH access, LFS, and five act_runner worker instances that register automatically on first boot.


🐳 Docker

Pull and run

docker run -d \
  --restart always \
  --privileged \
  --name casjaysdevdocker-gitea-latest \
  --hostname gitea \
  -e TZ=${TIMEZONE:-America/New_York} \
  -v /var/lib/srv/$USER/docker/casjaysdevdocker/gitea/data:/data:z \
  -v /var/lib/srv/$USER/docker/casjaysdevdocker/gitea/config:/config:z \
  -p 80:80 \
  -p 7833:7833 \
  -p 2375:2375 \
  -p 44015:44015 \
  casjaysdevdocker/gitea:latest

Note: --privileged is required — the container runs a full Docker daemon (DinD) and needs cgroup v2 access.

Ports

Port Protocol Service Description
80 TCP Gitea Web UI and HTTP clone
7833 TCP sshd Git SSH access (git clone git@host:user/repo)
2375 TCP dockerd Docker daemon (plain HTTP — bind to localhost or a trusted network only)
44015 TCP act_runner Actions artifact/cache server

Volumes

Path Description
/config Gitea config, SSH host keys, act_runner registration state
/data Gitea repositories, LFS objects, SQLite database, Docker layer cache

Environment variables

Variable Default Description
TZ America/New_York Container timezone
SERVER_ADDRESS http://localhost Gitea URL used by act_runner for self-registration
SERVER_TOKEN (auto-generated) act_runner registration token — generated from Gitea on first boot if not set
RUNNER_LABELS (runner default) Comma-separated labels applied to all registered runners
RUNNERS_START 5 Number of act_runner worker instances to start
RUNNERS_LOG_DIR /var/log/act_runner Directory for per-runner log files

docker-compose

services:
  gitea:
    image: casjaysdevdocker/gitea:latest
    container_name: casjaysdevdocker-gitea
    restart: always
    privileged: true
    hostname: gitea
    environment:
      - TZ=America/New_York
      - RUNNERS_START=5
    volumes:
      - /var/lib/srv/$USER/docker/casjaysdevdocker/gitea/data:/data:z
      - /var/lib/srv/$USER/docker/casjaysdevdocker/gitea/config:/config:z
    ports:
      - 80:80
      - 7833:7833
      - 2375:2375
      - 44015:44015

Automatic install/update via dockermgr

dockermgr update gitea

🛠️ Development

Get source files

git clone "https://github.com/casjaysdevdocker/gitea" "$HOME/Projects/github/casjaysdevdocker/gitea"

🐳 Docker build

The image builds for linux/amd64 and linux/arm64 via BuildX. Gitea and act_runner binaries are downloaded from GitHub/Gitea APIs at build time.

cd "$HOME/Projects/github/casjaysdevdocker/gitea"
buildx

Image tags pushed: casjaysdevdocker/gitea:latest and casjaysdevdocker/gitea:YYMM (date tag).


👤 Authors

🤖 casjay: Github 🤖
casjaysdevdocker: Github Docker


📄 License

MIT — see LICENSE.md

S
Description
Repo for gitea
Readme 346 KiB
Languages
Shell 96.2%
Dockerfile 3.8%