refactor(forgejo): consolidate version directories and add rootless mode option
- remove separate directories for versions 14, 14-rootless, and 14.0.2-rootless - consolidate configuration into a single 14.0.2 directory - add rootless mode as a selectable option in the data.yml form - update docker-compose.yml to use dynamic image selection based on rootless mode - add init.sh and upgrade.sh scripts to handle rootless mode setup and image selection - update volume paths to support both root and rootless container modes
This commit is contained in:
parent
7080624537
commit
67c8f80883
|
|
@ -1,116 +0,0 @@
|
||||||
additionalProperties:
|
|
||||||
formFields:
|
|
||||||
- default: 3000
|
|
||||||
envKey: PANEL_APP_PORT_HTTP
|
|
||||||
labelZh: HTTP 端口
|
|
||||||
labelEn: HTTP Port
|
|
||||||
label:
|
|
||||||
zh: HTTP 端口
|
|
||||||
zh-Hant: HTTP 埠
|
|
||||||
en: HTTP Port
|
|
||||||
ja: HTTP ポート
|
|
||||||
ko: HTTP 포트
|
|
||||||
ms: HTTP Port
|
|
||||||
pt-br: HTTP Porta
|
|
||||||
ru: HTTP Порт
|
|
||||||
required: true
|
|
||||||
type: number
|
|
||||||
edit: true
|
|
||||||
rule: paramPort
|
|
||||||
- default: 222
|
|
||||||
envKey: PANEL_APP_PORT_SSH
|
|
||||||
labelZh: SSH 端口
|
|
||||||
labelEn: SSH Port
|
|
||||||
label:
|
|
||||||
zh: SSH 端口
|
|
||||||
zh-Hant: SSH 埠
|
|
||||||
en: SSH Port
|
|
||||||
ja: SSH ポート
|
|
||||||
ko: SSH 포트
|
|
||||||
ms: SSH Port
|
|
||||||
pt-br: SSH Porta
|
|
||||||
ru: SSH Порт
|
|
||||||
required: true
|
|
||||||
type: number
|
|
||||||
edit: true
|
|
||||||
rule: paramPort
|
|
||||||
- default: mysql
|
|
||||||
envKey: PANEL_DB_TYPE
|
|
||||||
labelZh: 数据库
|
|
||||||
labelEn: Database
|
|
||||||
label:
|
|
||||||
en: Database
|
|
||||||
ja: データベース
|
|
||||||
ko: 데이터베이스
|
|
||||||
ms: Pangkalan Data
|
|
||||||
pt-br: Banco de Dados
|
|
||||||
ru: База данных
|
|
||||||
tr: Veritabanı
|
|
||||||
zh: 数据库
|
|
||||||
zh-Hant: 資料庫
|
|
||||||
required: true
|
|
||||||
type: apps
|
|
||||||
values:
|
|
||||||
- label: MySQL
|
|
||||||
value: mysql
|
|
||||||
- label: PostgreSQL
|
|
||||||
value: postgres
|
|
||||||
child:
|
|
||||||
default: ""
|
|
||||||
envKey: PANEL_DB_HOST
|
|
||||||
required: true
|
|
||||||
type: service
|
|
||||||
- default: forgejo
|
|
||||||
envKey: PANEL_DB_NAME
|
|
||||||
labelZh: 数据库名
|
|
||||||
labelEn: Database Name
|
|
||||||
label:
|
|
||||||
en: Database Name
|
|
||||||
ja: データベース名
|
|
||||||
ko: 데이터베이스 이름
|
|
||||||
ms: Nama Pangkalan Data
|
|
||||||
pt-br: Nome do Banco de Dados
|
|
||||||
ru: Имя базы данных
|
|
||||||
tr: Veritabanı Adı
|
|
||||||
zh: 数据库名
|
|
||||||
zh-Hant: 資料庫名稱
|
|
||||||
required: true
|
|
||||||
type: text
|
|
||||||
rule: paramCommon
|
|
||||||
random: true
|
|
||||||
- default: forgejo_user
|
|
||||||
envKey: PANEL_DB_USER
|
|
||||||
labelZh: 数据库用户名
|
|
||||||
labelEn: Database Username
|
|
||||||
label:
|
|
||||||
en: Database Username
|
|
||||||
ja: データベースユーザー名
|
|
||||||
ko: 데이터베이스 사용자 이름
|
|
||||||
ms: Nama Pengguna Pangkalan Data
|
|
||||||
pt-br: Nome de Usuário do Banco de Dados
|
|
||||||
ru: Имя пользователя базы данных
|
|
||||||
tr: Veritabanı Kullanıcı Adı
|
|
||||||
zh: 数据库用户名
|
|
||||||
zh-Hant: 資料庫使用者名稱
|
|
||||||
required: true
|
|
||||||
type: text
|
|
||||||
rule: paramCommon
|
|
||||||
random: true
|
|
||||||
- default: forgejo_pass
|
|
||||||
envKey: PANEL_DB_USER_PASSWORD
|
|
||||||
labelZh: 数据库密码
|
|
||||||
labelEn: Database Password
|
|
||||||
label:
|
|
||||||
en: Database Password
|
|
||||||
ja: データベースパスワード
|
|
||||||
ko: 데이터베이스 비밀번호
|
|
||||||
ms: Kata Laluan Pangkalan Data
|
|
||||||
pt-br: Senha do Banco de Dados
|
|
||||||
ru: Пароль базы данных
|
|
||||||
tr: Veritabanı Parolası
|
|
||||||
zh: 数据库密码
|
|
||||||
zh-Hant: 資料庫密碼
|
|
||||||
required: true
|
|
||||||
type: password
|
|
||||||
rule: paramComplexity
|
|
||||||
random: true
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
services:
|
|
||||||
forgejo:
|
|
||||||
image: codeberg.org/forgejo/forgejo:14-rootless
|
|
||||||
container_name: ${CONTAINER_NAME}
|
|
||||||
environment:
|
|
||||||
- USER_UID=1000
|
|
||||||
- USER_GID=1000
|
|
||||||
- FORGEJO__database__DB_TYPE=${PANEL_DB_TYPE}
|
|
||||||
- FORGEJO__database__HOST=${PANEL_DB_HOST}:${PANEL_DB_PORT}
|
|
||||||
- FORGEJO__database__NAME=${PANEL_DB_NAME}
|
|
||||||
- FORGEJO__database__USER=${PANEL_DB_USER}
|
|
||||||
- FORGEJO__database__PASSWD=${PANEL_DB_USER_PASSWORD}
|
|
||||||
restart: always
|
|
||||||
networks:
|
|
||||||
- 1panel-network
|
|
||||||
volumes:
|
|
||||||
- ./forgejo:/var/lib/gitea
|
|
||||||
- ./conf:/etc/gitea
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
ports:
|
|
||||||
- ${PANEL_APP_PORT_HTTP}:3000
|
|
||||||
- ${PANEL_APP_PORT_SSH}:2222
|
|
||||||
labels:
|
|
||||||
createdBy: Apps
|
|
||||||
networks:
|
|
||||||
1panel-network:
|
|
||||||
external: true
|
|
||||||
|
|
@ -1,116 +0,0 @@
|
||||||
additionalProperties:
|
|
||||||
formFields:
|
|
||||||
- default: 3000
|
|
||||||
envKey: PANEL_APP_PORT_HTTP
|
|
||||||
labelZh: HTTP 端口
|
|
||||||
labelEn: HTTP Port
|
|
||||||
label:
|
|
||||||
zh: HTTP 端口
|
|
||||||
zh-Hant: HTTP 埠
|
|
||||||
en: HTTP Port
|
|
||||||
ja: HTTP ポート
|
|
||||||
ko: HTTP 포트
|
|
||||||
ms: HTTP Port
|
|
||||||
pt-br: HTTP Porta
|
|
||||||
ru: HTTP Порт
|
|
||||||
required: true
|
|
||||||
type: number
|
|
||||||
edit: true
|
|
||||||
rule: paramPort
|
|
||||||
- default: 222
|
|
||||||
envKey: PANEL_APP_PORT_SSH
|
|
||||||
labelZh: SSH 端口
|
|
||||||
labelEn: SSH Port
|
|
||||||
label:
|
|
||||||
zh: SSH 端口
|
|
||||||
zh-Hant: SSH 埠
|
|
||||||
en: SSH Port
|
|
||||||
ja: SSH ポート
|
|
||||||
ko: SSH 포트
|
|
||||||
ms: SSH Port
|
|
||||||
pt-br: SSH Porta
|
|
||||||
ru: SSH Порт
|
|
||||||
required: true
|
|
||||||
type: number
|
|
||||||
edit: true
|
|
||||||
rule: paramPort
|
|
||||||
- default: mysql
|
|
||||||
envKey: PANEL_DB_TYPE
|
|
||||||
labelZh: 数据库
|
|
||||||
labelEn: Database
|
|
||||||
label:
|
|
||||||
en: Database
|
|
||||||
ja: データベース
|
|
||||||
ko: 데이터베이스
|
|
||||||
ms: Pangkalan Data
|
|
||||||
pt-br: Banco de Dados
|
|
||||||
ru: База данных
|
|
||||||
tr: Veritabanı
|
|
||||||
zh: 数据库
|
|
||||||
zh-Hant: 資料庫
|
|
||||||
required: true
|
|
||||||
type: apps
|
|
||||||
values:
|
|
||||||
- label: MySQL
|
|
||||||
value: mysql
|
|
||||||
- label: PostgreSQL
|
|
||||||
value: postgres
|
|
||||||
child:
|
|
||||||
default: ""
|
|
||||||
envKey: PANEL_DB_HOST
|
|
||||||
required: true
|
|
||||||
type: service
|
|
||||||
- default: forgejo
|
|
||||||
envKey: PANEL_DB_NAME
|
|
||||||
labelZh: 数据库名
|
|
||||||
labelEn: Database Name
|
|
||||||
label:
|
|
||||||
en: Database Name
|
|
||||||
ja: データベース名
|
|
||||||
ko: 데이터베이스 이름
|
|
||||||
ms: Nama Pangkalan Data
|
|
||||||
pt-br: Nome do Banco de Dados
|
|
||||||
ru: Имя базы данных
|
|
||||||
tr: Veritabanı Adı
|
|
||||||
zh: 数据库名
|
|
||||||
zh-Hant: 資料庫名稱
|
|
||||||
required: true
|
|
||||||
type: text
|
|
||||||
rule: paramCommon
|
|
||||||
random: true
|
|
||||||
- default: forgejo_user
|
|
||||||
envKey: PANEL_DB_USER
|
|
||||||
labelZh: 数据库用户名
|
|
||||||
labelEn: Database Username
|
|
||||||
label:
|
|
||||||
en: Database Username
|
|
||||||
ja: データベースユーザー名
|
|
||||||
ko: 데이터베이스 사용자 이름
|
|
||||||
ms: Nama Pengguna Pangkalan Data
|
|
||||||
pt-br: Nome de Usuário do Banco de Dados
|
|
||||||
ru: Имя пользователя базы данных
|
|
||||||
tr: Veritabanı Kullanıcı Adı
|
|
||||||
zh: 数据库用户名
|
|
||||||
zh-Hant: 資料庫使用者名稱
|
|
||||||
required: true
|
|
||||||
type: text
|
|
||||||
rule: paramCommon
|
|
||||||
random: true
|
|
||||||
- default: forgejo_pass
|
|
||||||
envKey: PANEL_DB_USER_PASSWORD
|
|
||||||
labelZh: 数据库密码
|
|
||||||
labelEn: Database Password
|
|
||||||
label:
|
|
||||||
en: Database Password
|
|
||||||
ja: データベースパスワード
|
|
||||||
ko: 데이터베이스 비밀번호
|
|
||||||
ms: Kata Laluan Pangkalan Data
|
|
||||||
pt-br: Senha do Banco de Dados
|
|
||||||
ru: Пароль базы данных
|
|
||||||
tr: Veritabanı Parolası
|
|
||||||
zh: 数据库密码
|
|
||||||
zh-Hant: 資料庫密碼
|
|
||||||
required: true
|
|
||||||
type: password
|
|
||||||
rule: paramComplexity
|
|
||||||
random: true
|
|
||||||
|
|
@ -1,27 +0,0 @@
|
||||||
services:
|
|
||||||
forgejo:
|
|
||||||
image: codeberg.org/forgejo/forgejo:14.0.2-rootless
|
|
||||||
container_name: ${CONTAINER_NAME}
|
|
||||||
environment:
|
|
||||||
- USER_UID=1000
|
|
||||||
- USER_GID=1000
|
|
||||||
- FORGEJO__database__DB_TYPE=${PANEL_DB_TYPE}
|
|
||||||
- FORGEJO__database__HOST=${PANEL_DB_HOST}:${PANEL_DB_PORT}
|
|
||||||
- FORGEJO__database__NAME=${PANEL_DB_NAME}
|
|
||||||
- FORGEJO__database__USER=${PANEL_DB_USER}
|
|
||||||
- FORGEJO__database__PASSWD=${PANEL_DB_USER_PASSWORD}
|
|
||||||
restart: always
|
|
||||||
networks:
|
|
||||||
- 1panel-network
|
|
||||||
volumes:
|
|
||||||
- ./forgejo:/var/lib/gitea
|
|
||||||
- ./conf:/etc/gitea
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
ports:
|
|
||||||
- ${PANEL_APP_PORT_HTTP}:3000
|
|
||||||
- ${PANEL_APP_PORT_SSH}:2222
|
|
||||||
labels:
|
|
||||||
createdBy: Apps
|
|
||||||
networks:
|
|
||||||
1panel-network:
|
|
||||||
external: true
|
|
||||||
|
|
@ -34,6 +34,27 @@ additionalProperties:
|
||||||
type: number
|
type: number
|
||||||
edit: true
|
edit: true
|
||||||
rule: paramPort
|
rule: paramPort
|
||||||
|
- default: "false"
|
||||||
|
envKey: ROOTLESS
|
||||||
|
labelZh: 无根模式
|
||||||
|
labelEn: Rootless Mode
|
||||||
|
label:
|
||||||
|
zh: 无根模式
|
||||||
|
zh-Hant: 無根模式
|
||||||
|
en: Rootless Mode
|
||||||
|
ja: Rootlessモード
|
||||||
|
ko: 루트리스 모ード
|
||||||
|
ms: Mod Tanpa Keistimewaan
|
||||||
|
pt-br: Modo Sem Privilégios
|
||||||
|
ru: Беспривилегированный режим
|
||||||
|
tr: Ayrıcalıksız Mod
|
||||||
|
required: false
|
||||||
|
type: select
|
||||||
|
values:
|
||||||
|
- label: "True"
|
||||||
|
value: "true"
|
||||||
|
- label: "False"
|
||||||
|
value: "false"
|
||||||
- default: mysql
|
- default: mysql
|
||||||
envKey: PANEL_DB_TYPE
|
envKey: PANEL_DB_TYPE
|
||||||
labelZh: 数据库
|
labelZh: 数据库
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
services:
|
services:
|
||||||
forgejo:
|
forgejo:
|
||||||
image: codeberg.org/forgejo/forgejo:14.0.2
|
image: ${IMAGE}
|
||||||
container_name: ${CONTAINER_NAME}
|
container_name: ${CONTAINER_NAME}
|
||||||
environment:
|
environment:
|
||||||
- USER_UID=1000
|
- USER_UID=1000
|
||||||
|
|
@ -14,7 +14,9 @@ services:
|
||||||
networks:
|
networks:
|
||||||
- 1panel-network
|
- 1panel-network
|
||||||
volumes:
|
volumes:
|
||||||
- ./forgejo:/data
|
- ./data:/data
|
||||||
|
- ./data-rootless/forgejo:/var/lib/gitea
|
||||||
|
- ./data-rootless/conf:/etc/gitea
|
||||||
- /etc/localtime:/etc/localtime:ro
|
- /etc/localtime:/etc/localtime:ro
|
||||||
ports:
|
ports:
|
||||||
- ${PANEL_APP_PORT_HTTP}:3000
|
- ${PANEL_APP_PORT_HTTP}:3000
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,13 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
[ -f ./.env ] && source ./.env
|
||||||
|
|
||||||
|
# renovate: datasource=docker depName=forgejo/forgejo
|
||||||
|
IMAGE=codeberg.org/forgejo/forgejo:14.0.2
|
||||||
|
|
||||||
|
if [ "${ROOTLESS}" = "true" ]; then
|
||||||
|
IMAGE="${IMAGE}-rootless"
|
||||||
|
mkdir -p ./data-rootless/forgejo ./data-rootless/conf
|
||||||
|
chown -R 1000:1000 ./data-rootless/forgejo ./data-rootless/conf
|
||||||
|
fi
|
||||||
|
echo "IMAGE=${IMAGE}" >> .env
|
||||||
|
|
@ -0,0 +1,5 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
if [ -f ./scripts/init.sh ]; then
|
||||||
|
bash ./scripts/init.sh
|
||||||
|
fi
|
||||||
|
|
@ -1,116 +0,0 @@
|
||||||
additionalProperties:
|
|
||||||
formFields:
|
|
||||||
- default: 3000
|
|
||||||
envKey: PANEL_APP_PORT_HTTP
|
|
||||||
labelZh: HTTP 端口
|
|
||||||
labelEn: HTTP Port
|
|
||||||
label:
|
|
||||||
zh: HTTP 端口
|
|
||||||
zh-Hant: HTTP 埠
|
|
||||||
en: HTTP Port
|
|
||||||
ja: HTTP ポート
|
|
||||||
ko: HTTP 포트
|
|
||||||
ms: HTTP Port
|
|
||||||
pt-br: HTTP Porta
|
|
||||||
ru: HTTP Порт
|
|
||||||
required: true
|
|
||||||
type: number
|
|
||||||
edit: true
|
|
||||||
rule: paramPort
|
|
||||||
- default: 222
|
|
||||||
envKey: PANEL_APP_PORT_SSH
|
|
||||||
labelZh: SSH 端口
|
|
||||||
labelEn: SSH Port
|
|
||||||
label:
|
|
||||||
zh: SSH 端口
|
|
||||||
zh-Hant: SSH 埠
|
|
||||||
en: SSH Port
|
|
||||||
ja: SSH ポート
|
|
||||||
ko: SSH 포트
|
|
||||||
ms: SSH Port
|
|
||||||
pt-br: SSH Porta
|
|
||||||
ru: SSH Порт
|
|
||||||
required: true
|
|
||||||
type: number
|
|
||||||
edit: true
|
|
||||||
rule: paramPort
|
|
||||||
- default: mysql
|
|
||||||
envKey: PANEL_DB_TYPE
|
|
||||||
labelZh: 数据库
|
|
||||||
labelEn: Database
|
|
||||||
label:
|
|
||||||
en: Database
|
|
||||||
ja: データベース
|
|
||||||
ko: 데이터베이스
|
|
||||||
ms: Pangkalan Data
|
|
||||||
pt-br: Banco de Dados
|
|
||||||
ru: База данных
|
|
||||||
tr: Veritabanı
|
|
||||||
zh: 数据库
|
|
||||||
zh-Hant: 資料庫
|
|
||||||
required: true
|
|
||||||
type: apps
|
|
||||||
values:
|
|
||||||
- label: MySQL
|
|
||||||
value: mysql
|
|
||||||
- label: PostgreSQL
|
|
||||||
value: postgres
|
|
||||||
child:
|
|
||||||
default: ""
|
|
||||||
envKey: PANEL_DB_HOST
|
|
||||||
required: true
|
|
||||||
type: service
|
|
||||||
- default: forgejo
|
|
||||||
envKey: PANEL_DB_NAME
|
|
||||||
labelZh: 数据库名
|
|
||||||
labelEn: Database Name
|
|
||||||
label:
|
|
||||||
en: Database Name
|
|
||||||
ja: データベース名
|
|
||||||
ko: 데이터베이스 이름
|
|
||||||
ms: Nama Pangkalan Data
|
|
||||||
pt-br: Nome do Banco de Dados
|
|
||||||
ru: Имя базы данных
|
|
||||||
tr: Veritabanı Adı
|
|
||||||
zh: 数据库名
|
|
||||||
zh-Hant: 資料庫名稱
|
|
||||||
required: true
|
|
||||||
type: text
|
|
||||||
rule: paramCommon
|
|
||||||
random: true
|
|
||||||
- default: forgejo_user
|
|
||||||
envKey: PANEL_DB_USER
|
|
||||||
labelZh: 数据库用户名
|
|
||||||
labelEn: Database Username
|
|
||||||
label:
|
|
||||||
en: Database Username
|
|
||||||
ja: データベースユーザー名
|
|
||||||
ko: 데이터베이스 사용자 이름
|
|
||||||
ms: Nama Pengguna Pangkalan Data
|
|
||||||
pt-br: Nome de Usuário do Banco de Dados
|
|
||||||
ru: Имя пользователя базы данных
|
|
||||||
tr: Veritabanı Kullanıcı Adı
|
|
||||||
zh: 数据库用户名
|
|
||||||
zh-Hant: 資料庫使用者名稱
|
|
||||||
required: true
|
|
||||||
type: text
|
|
||||||
rule: paramCommon
|
|
||||||
random: true
|
|
||||||
- default: forgejo_pass
|
|
||||||
envKey: PANEL_DB_USER_PASSWORD
|
|
||||||
labelZh: 数据库密码
|
|
||||||
labelEn: Database Password
|
|
||||||
label:
|
|
||||||
en: Database Password
|
|
||||||
ja: データベースパスワード
|
|
||||||
ko: 데이터베이스 비밀번호
|
|
||||||
ms: Kata Laluan Pangkalan Data
|
|
||||||
pt-br: Senha do Banco de Dados
|
|
||||||
ru: Пароль базы данных
|
|
||||||
tr: Veritabanı Parolası
|
|
||||||
zh: 数据库密码
|
|
||||||
zh-Hant: 資料庫密碼
|
|
||||||
required: true
|
|
||||||
type: password
|
|
||||||
rule: paramComplexity
|
|
||||||
random: true
|
|
||||||
|
|
@ -1,26 +0,0 @@
|
||||||
services:
|
|
||||||
forgejo:
|
|
||||||
image: codeberg.org/forgejo/forgejo:14
|
|
||||||
container_name: ${CONTAINER_NAME}
|
|
||||||
environment:
|
|
||||||
- USER_UID=1000
|
|
||||||
- USER_GID=1000
|
|
||||||
- FORGEJO__database__DB_TYPE=${PANEL_DB_TYPE}
|
|
||||||
- FORGEJO__database__HOST=${PANEL_DB_HOST}:${PANEL_DB_PORT}
|
|
||||||
- FORGEJO__database__NAME=${PANEL_DB_NAME}
|
|
||||||
- FORGEJO__database__USER=${PANEL_DB_USER}
|
|
||||||
- FORGEJO__database__PASSWD=${PANEL_DB_USER_PASSWORD}
|
|
||||||
restart: always
|
|
||||||
networks:
|
|
||||||
- 1panel-network
|
|
||||||
volumes:
|
|
||||||
- ./forgejo:/data
|
|
||||||
- /etc/localtime:/etc/localtime:ro
|
|
||||||
ports:
|
|
||||||
- ${PANEL_APP_PORT_HTTP}:3000
|
|
||||||
- ${PANEL_APP_PORT_SSH}:22
|
|
||||||
labels:
|
|
||||||
createdBy: Apps
|
|
||||||
networks:
|
|
||||||
1panel-network:
|
|
||||||
external: true
|
|
||||||
Loading…
Reference in New Issue