You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

app.ini 16KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510
  1. ; App name that shows on every page title
  2. APP_NAME = Gitea: Git with a cup of tea
  3. ; Change it if you run locally
  4. RUN_USER = git
  5. ; Either "dev", "prod" or "test", default is "dev"
  6. RUN_MODE = dev
  7. [repository]
  8. ROOT =
  9. SCRIPT_TYPE = bash
  10. ; Default ANSI charset
  11. ANSI_CHARSET =
  12. ; Force every new repository to be private
  13. FORCE_PRIVATE = false
  14. ; Global maximum creation limit of repository per user, -1 means no limit
  15. MAX_CREATION_LIMIT = -1
  16. ; Mirror sync queue length, increase if mirror syncing starts hanging
  17. MIRROR_QUEUE_LENGTH = 1000
  18. ; Patch test queue length, increase if pull request patch testing starts hanging
  19. PULL_REQUEST_QUEUE_LENGTH = 1000
  20. ; Preferred Licenses to place at the top of the List
  21. ; Name must match file name in conf/license or custom/conf/license
  22. PREFERRED_LICENSES = Apache License 2.0,MIT License
  23. ; Disable ability to interact with repositories by HTTP protocol
  24. DISABLE_HTTP_GIT = false
  25. [repository.editor]
  26. ; List of file extensions that should have line wraps in the CodeMirror editor
  27. ; Separate extensions with a comma. To line wrap files w/o extension, just put a comma
  28. LINE_WRAP_EXTENSIONS = .txt,.md,.markdown,.mdown,.mkd,
  29. ; Valid file modes that have a preview API associated with them, such as api/v1/markdown
  30. ; Separate values by commas. Preview tab in edit mode won't show if the file extension doesn't match
  31. PREVIEWABLE_FILE_MODES = markdown
  32. [repository.upload]
  33. ; Whether repository file uploads are enabled. Defaults to `true`
  34. ENABLED = true
  35. ; Path for uploads. Defaults to `data/tmp/uploads` (tmp gets deleted on gitea restart)
  36. TEMP_PATH = data/tmp/uploads
  37. ; One or more allowed types, e.g. image/jpeg|image/png. Nothing means any file type
  38. ALLOWED_TYPES =
  39. ; Max size of each file in MB. Defaults to 3MB
  40. FILE_MAX_SIZE = 3
  41. ; Max number of files per upload. Defaults to 5
  42. MAX_FILES = 5
  43. [ui]
  44. ; Number of repositories that are showed in one explore page
  45. EXPLORE_PAGING_NUM = 20
  46. ; Number of issues that are showed in one page
  47. ISSUE_PAGING_NUM = 10
  48. ; Number of maximum commits showed in one activity feed
  49. FEED_MAX_COMMIT_NUM = 5
  50. ; Value of `theme-color` meta tag, used by Android >= 5.0
  51. ; An invalid color like "none" or "disable" will have the default style
  52. ; More info: https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android
  53. THEME_COLOR_META_TAG = `#6cc644`
  54. ; Max size of files to be displayed (defaults is 8MiB)
  55. MAX_DISPLAY_FILE_SIZE = 8388608
  56. ; Whether show the user email in the Explore Users page
  57. SHOW_USER_EMAIL = true
  58. [ui.admin]
  59. ; Number of users that are showed in one page
  60. USER_PAGING_NUM = 50
  61. ; Number of repos that are showed in one page
  62. REPO_PAGING_NUM = 50
  63. ; Number of notices that are showed in one page
  64. NOTICE_PAGING_NUM = 25
  65. ; Number of organization that are showed in one page
  66. ORG_PAGING_NUM = 50
  67. [ui.user]
  68. ; Number of repos that are showed in one page
  69. REPO_PAGING_NUM = 15
  70. [ui.meta]
  71. AUTHOR = Gitea - Git with a cup of tea
  72. DESCRIPTION = Gitea (Git with a cup of tea) is a painless self-hosted Git service written in Go
  73. KEYWORDS = go,git,self-hosted,gitea
  74. [markdown]
  75. ; Enable hard line break extension
  76. ENABLE_HARD_LINE_BREAK = false
  77. ; List of custom URL-Schemes that are allowed as links when rendering Markdown
  78. ; for example git,magnet
  79. CUSTOM_URL_SCHEMES =
  80. ; List of file extensions that should be rendered/edited as Markdown
  81. ; Separate extensions with a comma. To render files w/o extension as markdown, just put a comma
  82. FILE_EXTENSIONS = .md,.markdown,.mdown,.mkd
  83. [server]
  84. PROTOCOL = http
  85. DOMAIN = localhost
  86. ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/
  87. HTTP_ADDR = 0.0.0.0
  88. HTTP_PORT = 3000
  89. ; Permission for unix socket
  90. UNIX_SOCKET_PERMISSION = 666
  91. ; Local (DMZ) URL for Gitea workers (such as SSH update) accessing web service.
  92. ; In most cases you do not need to change the default value.
  93. ; Alter it only if your SSH server node is not the same as HTTP node.
  94. LOCAL_ROOT_URL = %(PROTOCOL)s://%(HTTP_ADDR)s:%(HTTP_PORT)s/
  95. ; Disable SSH feature when not available
  96. DISABLE_SSH = false
  97. ; Whether use builtin SSH server or not.
  98. START_SSH_SERVER = false
  99. ; Domain name to be exposed in clone URL
  100. SSH_DOMAIN = %(DOMAIN)s
  101. ; Network interface builtin SSH server listens on
  102. SSH_LISTEN_HOST =
  103. ; Port number to be exposed in clone URL
  104. SSH_PORT = 22
  105. ; Port number builtin SSH server listens on
  106. SSH_LISTEN_PORT = %(SSH_PORT)s
  107. ; Root path of SSH directory, default is '~/.ssh', but you have to use '/home/git/.ssh'.
  108. SSH_ROOT_PATH =
  109. ; Directory to create temporary files when test publick key using ssh-keygen,
  110. ; default is system temporary directory.
  111. SSH_KEY_TEST_PATH =
  112. ; Path to ssh-keygen, default is 'ssh-keygen' and let shell find out which one to call.
  113. SSH_KEYGEN_PATH = ssh-keygen
  114. ; Indicate whether to check minimum key size with corresponding type
  115. MINIMUM_KEY_SIZE_CHECK = false
  116. ; Disable CDN even in "prod" mode
  117. OFFLINE_MODE = false
  118. DISABLE_ROUTER_LOG = false
  119. ; Generate steps:
  120. ; $ ./gitea cert -ca=true -duration=8760h0m0s -host=myhost.example.com
  121. ;
  122. ; Or from a .pfx file exported from the Windows certificate store (do
  123. ; not forget to export the private key):
  124. ; $ openssl pkcs12 -in cert.pfx -out cert.pem -nokeys
  125. ; $ openssl pkcs12 -in cert.pfx -out key.pem -nocerts -nodes
  126. CERT_FILE = custom/https/cert.pem
  127. KEY_FILE = custom/https/key.pem
  128. ; Upper level of template and static file path
  129. ; default is the path where Gitea is executed
  130. STATIC_ROOT_PATH =
  131. ; Default path for App data
  132. APP_DATA_PATH = data
  133. ; Application level GZIP support
  134. ENABLE_GZIP = false
  135. ; Landing page for non-logged users, can be "home" or "explore"
  136. LANDING_PAGE = home
  137. ; Define allowed algorithms and their minimum key length (use -1 to disable a type)
  138. [ssh.minimum_key_sizes]
  139. ED25519 = 256
  140. ECDSA = 256
  141. RSA = 2048
  142. DSA = 1024
  143. [database]
  144. ; Either "mysql", "postgres", "mssql" or "sqlite3", it's your choice
  145. DB_TYPE = mysql
  146. HOST = 127.0.0.1:3306
  147. NAME = gitea
  148. USER = root
  149. PASSWD =
  150. ; For "postgres" only, either "disable", "require" or "verify-full"
  151. SSL_MODE = disable
  152. ; For "sqlite3" and "tidb", use absolute path when you start as service
  153. PATH = data/gitea.db
  154. [indexer]
  155. ISSUE_INDEXER_PATH = indexers/issues.bleve
  156. UPDATE_BUFFER_LEN = 20
  157. [admin]
  158. ; Disable regular (non-admin) users to create organizations
  159. DISABLE_REGULAR_ORG_CREATION = false
  160. [security]
  161. ; Whether the installer is disabled
  162. INSTALL_LOCK = false
  163. ; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
  164. SECRET_KEY = !#@FDEWREWR&*(
  165. ; Auto-login remember days
  166. LOGIN_REMEMBER_DAYS = 7
  167. COOKIE_USERNAME = gitea_awesome
  168. COOKIE_REMEMBER_NAME = gitea_incredible
  169. ; Reverse proxy authentication header name of user name
  170. REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER
  171. ; Sets the minimum password length for new Users
  172. MIN_PASSWORD_LENGTH = 6
  173. ; True when users are allowed to import local server paths
  174. IMPORT_LOCAL_PATHS = false
  175. [openid]
  176. ;
  177. ; OpenID is an open standard and decentralized authentication protocol.
  178. ; Your identity is the address of a webpage you provide, which describes
  179. ; how to prove you are in control of that page.
  180. ;
  181. ; For more info: https://en.wikipedia.org/wiki/OpenID
  182. ;
  183. ; Current implementation supports OpenID-2.0
  184. ;
  185. ; Tested to work providers at the time of writing:
  186. ; - Any GNUSocial node (your.hostname.tld/username)
  187. ; - Any SimpleID provider (http://simpleid.koinic.net)
  188. ; - http://openid.org.cn/
  189. ; - openid.stackexchange.com
  190. ; - login.launchpad.net
  191. ; - <username>.livejournal.com
  192. ;
  193. ; Whether to allow signin in via OpenID
  194. ENABLE_OPENID_SIGNIN = true
  195. ; Whether to allow registering via OpenID
  196. ; Do not include to rely on DISABLE_REGISTRATION setting
  197. ;ENABLE_OPENID_SIGNUP = true
  198. ; Allowed URI patterns (POSIX regexp).
  199. ; Space separated.
  200. ; Only these would be allowed if non-blank.
  201. ; Example value: trusted.domain.org trusted.domain.net
  202. WHITELISTED_URIS =
  203. ; Forbidden URI patterns (POSIX regexp).
  204. ; Space sepaated.
  205. ; Only used if WHITELISTED_URIS is blank.
  206. ; Example value: loadaverage.org/badguy stackexchange.com/.*spammer
  207. BLACKLISTED_URIS =
  208. [service]
  209. ACTIVE_CODE_LIVE_MINUTES = 180
  210. RESET_PASSWD_CODE_LIVE_MINUTES = 180
  211. ; User need to confirm e-mail for registration
  212. REGISTER_EMAIL_CONFIRM = false
  213. ; Does not allow register and admin create account only
  214. DISABLE_REGISTRATION = false
  215. ; User must sign in to view anything.
  216. REQUIRE_SIGNIN_VIEW = false
  217. ; Mail notification
  218. ENABLE_NOTIFY_MAIL = false
  219. ; More detail: https://github.com/go-gitea/gitea/issues/165
  220. ENABLE_REVERSE_PROXY_AUTHENTICATION = false
  221. ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false
  222. ; Enable captcha validation for registration
  223. ENABLE_CAPTCHA = true
  224. ; Default value for KeepEmailPrivate
  225. ; New user will get the value of this setting copied into their profile
  226. DEFAULT_KEEP_EMAIL_PRIVATE = false
  227. ; Default value for the domain part of the user's email address in the git log
  228. ; if he has set KeepEmailPrivate true. The user's email replaced with a
  229. ; concatenation of the user name in lower case, "@" and NO_REPLY_ADDRESS.
  230. NO_REPLY_ADDRESS = noreply.example.org
  231. [webhook]
  232. ; Hook task queue length, increase if webhook shooting starts hanging
  233. QUEUE_LENGTH = 1000
  234. ; Deliver timeout in seconds
  235. DELIVER_TIMEOUT = 5
  236. ; Allow insecure certification
  237. SKIP_TLS_VERIFY = false
  238. ; Number of history information in each page
  239. PAGING_NUM = 10
  240. [mailer]
  241. ENABLED = false
  242. ; Buffer length of channel, keep it as it is if you don't know what it is.
  243. SEND_BUFFER_LEN = 100
  244. ; Name displayed in mail title
  245. SUBJECT = %(APP_NAME)s
  246. ; Mail server
  247. ; Gmail: smtp.gmail.com:587
  248. ; QQ: smtp.qq.com:465
  249. ; Note, if the port ends with "465", SMTPS will be used. Using STARTTLS on port 587 is recommended per RFC 6409. If the server supports STARTTLS it will always be used.
  250. HOST =
  251. ; Disable HELO operation when hostname are different.
  252. DISABLE_HELO =
  253. ; Custom hostname for HELO operation, default is from system.
  254. HELO_HOSTNAME =
  255. ; Do not verify the certificate of the server. Only use this for self-signed certificates
  256. SKIP_VERIFY =
  257. ; Use client certificate
  258. USE_CERTIFICATE = false
  259. CERT_FILE = custom/mailer/cert.pem
  260. KEY_FILE = custom/mailer/key.pem
  261. ; Mail from address, RFC 5322. This can be just an email address, or the `"Name" <email@example.com>` format
  262. FROM =
  263. ; Mailer user name and password
  264. USER =
  265. PASSWD =
  266. ; Use text/html as alternative format of content
  267. ENABLE_HTML_ALTERNATIVE = false
  268. ; Enable sendmail (override SMTP)
  269. USE_SENDMAIL = false
  270. ; Specifiy an alternative sendmail binary
  271. SENDMAIL_PATH = sendmail
  272. [cache]
  273. ; Either "memory", "redis", or "memcache", default is "memory"
  274. ADAPTER = memory
  275. ; For "memory" only, GC interval in seconds, default is 60
  276. INTERVAL = 60
  277. ; For "redis" and "memcache", connection host address
  278. ; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
  279. ; memcache: `127.0.0.1:11211`
  280. HOST =
  281. [session]
  282. ; Either "memory", "file", or "redis", default is "memory"
  283. PROVIDER = memory
  284. ; Provider config options
  285. ; memory: not have any config yet
  286. ; file: session file path, e.g. `data/sessions`
  287. ; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
  288. ; mysql: go-sql-driver/mysql dsn config string, e.g. `root:password@/session_table`
  289. PROVIDER_CONFIG = data/sessions
  290. ; Session cookie name
  291. COOKIE_NAME = i_like_gitea
  292. ; If you use session in https only, default is false
  293. COOKIE_SECURE = false
  294. ; Enable set cookie, default is true
  295. ENABLE_SET_COOKIE = true
  296. ; Session GC time interval in seconds, default is 86400 (1 day)
  297. GC_INTERVAL_TIME = 86400
  298. ; Session life time in seconds, default is 86400 (1 day)
  299. SESSION_LIFE_TIME = 86400
  300. [picture]
  301. AVATAR_UPLOAD_PATH = data/avatars
  302. ; Chinese users can choose "duoshuo"
  303. ; or a custom avatar source, like: http://cn.gravatar.com/avatar/
  304. GRAVATAR_SOURCE = gravatar
  305. ; This value will be forced to be true in offline mode.
  306. DISABLE_GRAVATAR = false
  307. ; Federated avatar lookup uses DNS to discover avatar associated
  308. ; with emails, see https://www.libravatar.org
  309. ; This value will be forced to be false in offline mode or Gravatar is disbaled.
  310. ENABLE_FEDERATED_AVATAR = false
  311. [attachment]
  312. ; Whether attachments are enabled. Defaults to `true`
  313. ENABLE = true
  314. ; Path for attachments. Defaults to `data/attachments`
  315. PATH = data/attachments
  316. ; One or more allowed types, e.g. image/jpeg|image/png
  317. ALLOWED_TYPES = image/jpeg|image/png|application/zip|application/gzip
  318. ; Max size of each file. Defaults to 32MB
  319. MAX_SIZE = 4
  320. ; Max number of files per upload. Defaults to 10
  321. MAX_FILES = 5
  322. [time]
  323. ; Specifies the format for fully outputed dates. Defaults to RFC1123
  324. ; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano
  325. ; For more information about the format see http://golang.org/pkg/time/#pkg-constants
  326. FORMAT =
  327. [log]
  328. ROOT_PATH =
  329. ; Either "console", "file", "conn", "smtp" or "database", default is "console"
  330. ; Use comma to separate multiple modes, e.g. "console, file"
  331. MODE = console
  332. ; Buffer length of channel, keep it as it is if you don't know what it is.
  333. BUFFER_LEN = 10000
  334. ; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Trace"
  335. LEVEL = Trace
  336. ; For "console" mode only
  337. [log.console]
  338. LEVEL =
  339. ; For "file" mode only
  340. [log.file]
  341. LEVEL =
  342. ; This enables automated log rotate(switch of following options), default is true
  343. LOG_ROTATE = true
  344. ; Max line number of single file, default is 1000000
  345. MAX_LINES = 1000000
  346. ; Max size shift of single file, default is 28 means 1 << 28, 256MB
  347. MAX_SIZE_SHIFT = 28
  348. ; Segment log daily, default is true
  349. DAILY_ROTATE = true
  350. ; Expired days of log file(delete after max days), default is 7
  351. MAX_DAYS = 7
  352. ; For "conn" mode only
  353. [log.conn]
  354. LEVEL =
  355. ; Reconnect host for every single message, default is false
  356. RECONNECT_ON_MSG = false
  357. ; Try to reconnect when connection is lost, default is false
  358. RECONNECT = false
  359. ; Either "tcp", "unix" or "udp", default is "tcp"
  360. PROTOCOL = tcp
  361. ; Host address
  362. ADDR =
  363. ; For "smtp" mode only
  364. [log.smtp]
  365. LEVEL =
  366. ; Name displayed in mail title, default is "Diagnostic message from server"
  367. SUBJECT = Diagnostic message from server
  368. ; Mail server
  369. HOST =
  370. ; Mailer user name and password
  371. USER =
  372. PASSWD =
  373. ; Receivers, can be one or more, e.g. 1@example.com,2@example.com
  374. RECEIVERS =
  375. ; For "database" mode only
  376. [log.database]
  377. LEVEL =
  378. ; Either "mysql" or "postgres"
  379. DRIVER =
  380. ; Based on xorm, e.g.: root:root@localhost/gitea?charset=utf8
  381. CONN =
  382. [cron]
  383. ; Enable running cron tasks periodically.
  384. ENABLED = true
  385. ; Run cron tasks when Gitea starts.
  386. RUN_AT_START = false
  387. ; Update mirrors
  388. [cron.update_mirrors]
  389. SCHEDULE = @every 10m
  390. ; Repository health check
  391. [cron.repo_health_check]
  392. SCHEDULE = @every 24h
  393. TIMEOUT = 60s
  394. ; Arguments for command 'git fsck', e.g. "--unreachable --tags"
  395. ; see more on http://git-scm.com/docs/git-fsck/1.7.5
  396. ARGS =
  397. ; Check repository statistics
  398. [cron.check_repo_stats]
  399. RUN_AT_START = true
  400. SCHEDULE = @every 24h
  401. ; Clean up old repository archives
  402. [cron.archive_cleanup]
  403. RUN_AT_START = true
  404. SCHEDULE = @every 24h
  405. ; Archives created more than OLDER_THAN ago are subject to deletion
  406. OLDER_THAN = 24h
  407. [git]
  408. ; Disables highlight of added and removed changes
  409. DISABLE_DIFF_HIGHLIGHT = false
  410. ; Max number of lines allowed of a single file in diff view
  411. MAX_GIT_DIFF_LINES = 1000
  412. ; Max number of characters of a line allowed in diff view
  413. MAX_GIT_DIFF_LINE_CHARACTERS = 500
  414. ; Max number of files shown in diff view
  415. MAX_GIT_DIFF_FILES = 100
  416. ; Arguments for command 'git gc', e.g. "--aggressive --auto"
  417. ; see more on http://git-scm.com/docs/git-gc/1.7.5
  418. GC_ARGS =
  419. ; Operation timeout in seconds
  420. [git.timeout]
  421. MIGRATE = 600
  422. MIRROR = 300
  423. CLONE = 300
  424. PULL = 300
  425. GC = 60
  426. [mirror]
  427. ; Default interval as a duration between each check
  428. DEFAULT_INTERVAL = 8h
  429. ; Min interval as a duration must be > 1m
  430. MIN_INTERVAL = 10m
  431. [api]
  432. ; Max number of items will response in a page
  433. MAX_RESPONSE_ITEMS = 50
  434. [i18n]
  435. LANGS = en-US,zh-CN,zh-HK,zh-TW,de-DE,fr-FR,nl-NL,lv-LV,ru-RU,ja-JP,es-ES,pt-BR,pl-PL,bg-BG,it-IT,fi-FI,tr-TR,cs-CZ,sr-SP,sv-SE,ko-KR
  436. NAMES = English,简体中文,繁體中文(香港),繁體中文(台灣),Deutsch,Français,Nederlands,Latviešu,Русский,日本語,Español,Português do Brasil,Polski,български,Italiano,Suomalainen,Türkçe,čeština,Српски,Svenska,한국어
  437. ; Used for datetimepicker
  438. [i18n.datelang]
  439. en-US = en
  440. zh-CN = zh
  441. zh-HK = zh-TW
  442. zh-TW = zh-TW
  443. de-DE = de
  444. fr-FR = fr
  445. nl-NL = nl
  446. lv-LV = lv
  447. ru-RU = ru
  448. ja-JP = ja
  449. es-ES = es
  450. pt-BR = pt-BR
  451. pl-PL = pl
  452. bg-BG = bg
  453. it-IT = it
  454. fi-FI = fi
  455. tr-TR = tr
  456. cs-CZ = cs-CZ
  457. sr-SP = sr
  458. sv-SE = sv
  459. ko-KR = ko
  460. ; Extension mapping to highlight class
  461. ; e.g. .toml=ini
  462. [highlight.mapping]
  463. [other]
  464. SHOW_FOOTER_BRANDING = false
  465. ; Show version information about Gitea and Go in the footer
  466. SHOW_FOOTER_VERSION = true
  467. ; Show time of template execution in the footer
  468. SHOW_FOOTER_TEMPLATE_LOAD_TIME = true