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 15KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467
  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. [markdown]
  71. ; Enable hard line break extension
  72. ENABLE_HARD_LINE_BREAK = false
  73. ; List of custom URL-Schemes that are allowed as links when rendering Markdown
  74. ; for example git,magnet
  75. CUSTOM_URL_SCHEMES =
  76. ; List of file extensions that should be rendered/edited as Markdown
  77. ; Separate extensions with a comma. To render files w/o extension as markdown, just put a comma
  78. FILE_EXTENSIONS = .md,.markdown,.mdown,.mkd
  79. [server]
  80. PROTOCOL = http
  81. DOMAIN = localhost
  82. ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/
  83. HTTP_ADDR = 0.0.0.0
  84. HTTP_PORT = 3000
  85. ; Permission for unix socket
  86. UNIX_SOCKET_PERMISSION = 666
  87. ; Local (DMZ) URL for Gitea workers (such as SSH update) accessing web service.
  88. ; In most cases you do not need to change the default value.
  89. ; Alter it only if your SSH server node is not the same as HTTP node.
  90. LOCAL_ROOT_URL = %(PROTOCOL)s://%(HTTP_ADDR)s:%(HTTP_PORT)s/
  91. ; Disable SSH feature when not available
  92. DISABLE_SSH = false
  93. ; Whether use builtin SSH server or not.
  94. START_SSH_SERVER = false
  95. ; Domain name to be exposed in clone URL
  96. SSH_DOMAIN = %(DOMAIN)s
  97. ; Network interface builtin SSH server listens on
  98. SSH_LISTEN_HOST =
  99. ; Port number to be exposed in clone URL
  100. SSH_PORT = 22
  101. ; Port number builtin SSH server listens on
  102. SSH_LISTEN_PORT = %(SSH_PORT)s
  103. ; Root path of SSH directory, default is '~/.ssh', but you have to use '/home/git/.ssh'.
  104. SSH_ROOT_PATH =
  105. ; Directory to create temporary files when test publick key using ssh-keygen,
  106. ; default is system temporary directory.
  107. SSH_KEY_TEST_PATH =
  108. ; Path to ssh-keygen, default is 'ssh-keygen' and let shell find out which one to call.
  109. SSH_KEYGEN_PATH = ssh-keygen
  110. ; Indicate whether to check minimum key size with corresponding type
  111. MINIMUM_KEY_SIZE_CHECK = false
  112. ; Disable CDN even in "prod" mode
  113. OFFLINE_MODE = false
  114. DISABLE_ROUTER_LOG = false
  115. ; Generate steps:
  116. ; $ ./gitea cert -ca=true -duration=8760h0m0s -host=myhost.example.com
  117. ;
  118. ; Or from a .pfx file exported from the Windows certificate store (do
  119. ; not forget to export the private key):
  120. ; $ openssl pkcs12 -in cert.pfx -out cert.pem -nokeys
  121. ; $ openssl pkcs12 -in cert.pfx -out key.pem -nocerts -nodes
  122. CERT_FILE = custom/https/cert.pem
  123. KEY_FILE = custom/https/key.pem
  124. ; Upper level of template and static file path
  125. ; default is the path where Gitea is executed
  126. STATIC_ROOT_PATH =
  127. ; Default path for App data
  128. APP_DATA_PATH = data
  129. ; Application level GZIP support
  130. ENABLE_GZIP = false
  131. ; Landing page for non-logged users, can be "home" or "explore"
  132. LANDING_PAGE = home
  133. ; Define allowed algorithms and their minimum key length (use -1 to disable a type)
  134. [ssh.minimum_key_sizes]
  135. ED25519 = 256
  136. ECDSA = 256
  137. RSA = 2048
  138. DSA = 1024
  139. [database]
  140. ; Either "mysql", "postgres" or "sqlite3", it's your choice
  141. DB_TYPE = mysql
  142. HOST = 127.0.0.1:3306
  143. NAME = gitea
  144. USER = root
  145. PASSWD =
  146. ; For "postgres" only, either "disable", "require" or "verify-full"
  147. SSL_MODE = disable
  148. ; For "sqlite3" and "tidb", use absolute path when you start as service
  149. PATH = data/gitea.db
  150. [indexer]
  151. ISSUE_INDEXER_PATH = indexers/issues.bleve
  152. UPDATE_BUFFER_LEN = 20
  153. [admin]
  154. [security]
  155. ; Whether the installer is disabled
  156. INSTALL_LOCK = false
  157. ; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
  158. SECRET_KEY = !#@FDEWREWR&*(
  159. ; Auto-login remember days
  160. LOGIN_REMEMBER_DAYS = 7
  161. COOKIE_USERNAME = gitea_awesome
  162. COOKIE_REMEMBER_NAME = gitea_incredible
  163. ; Reverse proxy authentication header name of user name
  164. REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER
  165. ; Sets the minimum password length for new Users
  166. MIN_PASSWORD_LENGTH = 6
  167. ; True when users are allowed to import local server paths
  168. IMPORT_LOCAL_PATHS = false
  169. [service]
  170. ACTIVE_CODE_LIVE_MINUTES = 180
  171. RESET_PASSWD_CODE_LIVE_MINUTES = 180
  172. ; User need to confirm e-mail for registration
  173. REGISTER_EMAIL_CONFIRM = false
  174. ; Does not allow register and admin create account only
  175. DISABLE_REGISTRATION = false
  176. ; User must sign in to view anything.
  177. REQUIRE_SIGNIN_VIEW = false
  178. ; Mail notification
  179. ENABLE_NOTIFY_MAIL = false
  180. ; More detail: https://github.com/go-gitea/gitea/issues/165
  181. ENABLE_REVERSE_PROXY_AUTHENTICATION = false
  182. ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false
  183. ; Enable captcha validation for registration
  184. ENABLE_CAPTCHA = true
  185. ; Default value for KeepEmailPrivate
  186. ; New user will get the value of this setting copied into their profile
  187. DEFAULT_KEEP_EMAIL_PRIVATE = false
  188. ; Default value for the domain part of the user's email address in the git log
  189. ; if he has set KeepEmailPrivate true. The user's email replaced with a
  190. ; concatenation of the user name in lower case, "@" and NO_REPLY_ADDRESS.
  191. NO_REPLY_ADDRESS = noreply.example.org
  192. [webhook]
  193. ; Hook task queue length, increase if webhook shooting starts hanging
  194. QUEUE_LENGTH = 1000
  195. ; Deliver timeout in seconds
  196. DELIVER_TIMEOUT = 5
  197. ; Allow insecure certification
  198. SKIP_TLS_VERIFY = false
  199. ; Number of history information in each page
  200. PAGING_NUM = 10
  201. [mailer]
  202. ENABLED = false
  203. ; Buffer length of channel, keep it as it is if you don't know what it is.
  204. SEND_BUFFER_LEN = 100
  205. ; Name displayed in mail title
  206. SUBJECT = %(APP_NAME)s
  207. ; Mail server
  208. ; Gmail: smtp.gmail.com:587
  209. ; QQ: smtp.qq.com:465
  210. ; 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.
  211. HOST =
  212. ; Disable HELO operation when hostname are different.
  213. DISABLE_HELO =
  214. ; Custom hostname for HELO operation, default is from system.
  215. HELO_HOSTNAME =
  216. ; Do not verify the certificate of the server. Only use this for self-signed certificates
  217. SKIP_VERIFY =
  218. ; Use client certificate
  219. USE_CERTIFICATE = false
  220. CERT_FILE = custom/mailer/cert.pem
  221. KEY_FILE = custom/mailer/key.pem
  222. ; Mail from address, RFC 5322. This can be just an email address, or the `"Name" <email@example.com>` format
  223. FROM =
  224. ; Mailer user name and password
  225. USER =
  226. PASSWD =
  227. ; Use text/html as alternative format of content
  228. ENABLE_HTML_ALTERNATIVE = false
  229. ; Enable sendmail (override SMTP)
  230. USE_SENDMAIL = false
  231. ; Specifiy an alternative sendmail binary
  232. SENDMAIL_PATH = sendmail
  233. [cache]
  234. ; Either "memory", "redis", or "memcache", default is "memory"
  235. ADAPTER = memory
  236. ; For "memory" only, GC interval in seconds, default is 60
  237. INTERVAL = 60
  238. ; For "redis" and "memcache", connection host address
  239. ; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
  240. ; memcache: `127.0.0.1:11211`
  241. HOST =
  242. [session]
  243. ; Either "memory", "file", or "redis", default is "memory"
  244. PROVIDER = memory
  245. ; Provider config options
  246. ; memory: not have any config yet
  247. ; file: session file path, e.g. `data/sessions`
  248. ; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
  249. ; mysql: go-sql-driver/mysql dsn config string, e.g. `root:password@/session_table`
  250. PROVIDER_CONFIG = data/sessions
  251. ; Session cookie name
  252. COOKIE_NAME = i_like_gitea
  253. ; If you use session in https only, default is false
  254. COOKIE_SECURE = false
  255. ; Enable set cookie, default is true
  256. ENABLE_SET_COOKIE = true
  257. ; Session GC time interval, default is 86400
  258. GC_INTERVAL_TIME = 86400
  259. ; Session life time, default is 86400
  260. SESSION_LIFE_TIME = 86400
  261. [picture]
  262. AVATAR_UPLOAD_PATH = data/avatars
  263. ; Chinese users can choose "duoshuo"
  264. ; or a custom avatar source, like: http://cn.gravatar.com/avatar/
  265. GRAVATAR_SOURCE = gravatar
  266. ; This value will be forced to be true in offline mode.
  267. DISABLE_GRAVATAR = false
  268. ; Federated avatar lookup uses DNS to discover avatar associated
  269. ; with emails, see https://www.libravatar.org
  270. ; This value will be forced to be false in offline mode or Gravatar is disbaled.
  271. ENABLE_FEDERATED_AVATAR = false
  272. [attachment]
  273. ; Whether attachments are enabled. Defaults to `true`
  274. ENABLE = true
  275. ; Path for attachments. Defaults to `data/attachments`
  276. PATH = data/attachments
  277. ; One or more allowed types, e.g. image/jpeg|image/png
  278. ALLOWED_TYPES = image/jpeg|image/png|application/zip|application/gzip
  279. ; Max size of each file. Defaults to 32MB
  280. MAX_SIZE = 4
  281. ; Max number of files per upload. Defaults to 10
  282. MAX_FILES = 5
  283. [time]
  284. ; Specifies the format for fully outputed dates. Defaults to RFC1123
  285. ; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano
  286. ; For more information about the format see http://golang.org/pkg/time/#pkg-constants
  287. FORMAT =
  288. [log]
  289. ROOT_PATH =
  290. ; Either "console", "file", "conn", "smtp" or "database", default is "console"
  291. ; Use comma to separate multiple modes, e.g. "console, file"
  292. MODE = console
  293. ; Buffer length of channel, keep it as it is if you don't know what it is.
  294. BUFFER_LEN = 10000
  295. ; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Trace"
  296. LEVEL = Trace
  297. ; For "console" mode only
  298. [log.console]
  299. LEVEL =
  300. ; For "file" mode only
  301. [log.file]
  302. LEVEL =
  303. ; This enables automated log rotate(switch of following options), default is true
  304. LOG_ROTATE = true
  305. ; Max line number of single file, default is 1000000
  306. MAX_LINES = 1000000
  307. ; Max size shift of single file, default is 28 means 1 << 28, 256MB
  308. MAX_SIZE_SHIFT = 28
  309. ; Segment log daily, default is true
  310. DAILY_ROTATE = true
  311. ; Expired days of log file(delete after max days), default is 7
  312. MAX_DAYS = 7
  313. ; For "conn" mode only
  314. [log.conn]
  315. LEVEL =
  316. ; Reconnect host for every single message, default is false
  317. RECONNECT_ON_MSG = false
  318. ; Try to reconnect when connection is lost, default is false
  319. RECONNECT = false
  320. ; Either "tcp", "unix" or "udp", default is "tcp"
  321. PROTOCOL = tcp
  322. ; Host address
  323. ADDR =
  324. ; For "smtp" mode only
  325. [log.smtp]
  326. LEVEL =
  327. ; Name displayed in mail title, default is "Diagnostic message from server"
  328. SUBJECT = Diagnostic message from server
  329. ; Mail server
  330. HOST =
  331. ; Mailer user name and password
  332. USER =
  333. PASSWD =
  334. ; Receivers, can be one or more, e.g. 1@example.com,2@example.com
  335. RECEIVERS =
  336. ; For "database" mode only
  337. [log.database]
  338. LEVEL =
  339. ; Either "mysql" or "postgres"
  340. DRIVER =
  341. ; Based on xorm, e.g.: root:root@localhost/gitea?charset=utf8
  342. CONN =
  343. [cron]
  344. ; Enable running cron tasks periodically.
  345. ENABLED = true
  346. ; Run cron tasks when Gitea starts.
  347. RUN_AT_START = false
  348. ; Update mirrors
  349. [cron.update_mirrors]
  350. SCHEDULE = @every 10m
  351. ; Repository health check
  352. [cron.repo_health_check]
  353. SCHEDULE = @every 24h
  354. TIMEOUT = 60s
  355. ; Arguments for command 'git fsck', e.g. "--unreachable --tags"
  356. ; see more on http://git-scm.com/docs/git-fsck/1.7.5
  357. ARGS =
  358. ; Check repository statistics
  359. [cron.check_repo_stats]
  360. RUN_AT_START = true
  361. SCHEDULE = @every 24h
  362. ; Clean up old repository archives
  363. [cron.archive_cleanup]
  364. RUN_AT_START = true
  365. SCHEDULE = @every 24h
  366. ; Archives created more than OLDER_THAN ago are subject to deletion
  367. OLDER_THAN = 24h
  368. [git]
  369. ; Disables highlight of added and removed changes
  370. DISABLE_DIFF_HIGHLIGHT = false
  371. ; Max number of lines allowed of a single file in diff view
  372. MAX_GIT_DIFF_LINES = 1000
  373. ; Max number of characters of a line allowed in diff view
  374. MAX_GIT_DIFF_LINE_CHARACTERS = 500
  375. ; Max number of files shown in diff view
  376. MAX_GIT_DIFF_FILES = 100
  377. ; Arguments for command 'git gc', e.g. "--aggressive --auto"
  378. ; see more on http://git-scm.com/docs/git-gc/1.7.5
  379. GC_ARGS =
  380. ; Operation timeout in seconds
  381. [git.timeout]
  382. MIGRATE = 600
  383. MIRROR = 300
  384. CLONE = 300
  385. PULL = 300
  386. GC = 60
  387. [mirror]
  388. ; Default interval in hours between each check
  389. DEFAULT_INTERVAL = 8
  390. [api]
  391. ; Max number of items will response in a page
  392. MAX_RESPONSE_ITEMS = 50
  393. [i18n]
  394. 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
  395. NAMES = English,简体中文,繁體中文(香港),繁體中文(台灣),Deutsch,Français,Nederlands,Latviešu,Русский,日本語,Español,Português do Brasil,Polski,български,Italiano,Suomalainen,Türkçe,čeština,Српски,Svenska,한국어
  396. ; Used for datetimepicker
  397. [i18n.datelang]
  398. en-US = en
  399. zh-CN = zh
  400. zh-HK = zh-TW
  401. zh-TW = zh-TW
  402. de-DE = de
  403. fr-FR = fr
  404. nl-NL = nl
  405. lv-LV = lv
  406. ru-RU = ru
  407. ja-JP = ja
  408. es-ES = es
  409. pt-BR = pt-BR
  410. pl-PL = pl
  411. bg-BG = bg
  412. it-IT = it
  413. fi-FI = fi
  414. tr-TR = tr
  415. cs-CZ = cs-CZ
  416. sr-SP = sr
  417. sv-SE = sv
  418. ko-KR = ko
  419. ; Extension mapping to highlight class
  420. ; e.g. .toml=ini
  421. [highlight.mapping]
  422. [other]
  423. SHOW_FOOTER_BRANDING = false
  424. ; Show version information about Gitea and Go in the footer
  425. SHOW_FOOTER_VERSION = true
  426. ; Show time of template execution in the footer
  427. SHOW_FOOTER_TEMPLATE_LOAD_TIME = true