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.sample 28KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772
  1. ; This file lists the default values used by Gitea
  2. ; Copy required sections to your own app.ini (default is custom/conf/app.ini)
  3. ; and modify as needed.
  4. ; see https://docs.gitea.io/en-us/config-cheat-sheet/ for additional documentation.
  5. ; App name that shows in every page title
  6. APP_NAME = Gitea: Git with a cup of tea
  7. ; Change it if you run locally
  8. RUN_USER = git
  9. ; Either "dev", "prod" or "test", default is "dev"
  10. RUN_MODE = dev
  11. [repository]
  12. ROOT =
  13. SCRIPT_TYPE = bash
  14. ; Default ANSI charset
  15. ANSI_CHARSET =
  16. ; Force every new repository to be private
  17. FORCE_PRIVATE = false
  18. ; Default privacy setting when creating a new repository, allowed values: last, private, public. Default is last which means the last setting used.
  19. DEFAULT_PRIVATE = last
  20. ; Global limit of repositories per user, applied at creation time. -1 means no limit
  21. MAX_CREATION_LIMIT = -1
  22. ; Mirror sync queue length, increase if mirror syncing starts hanging
  23. MIRROR_QUEUE_LENGTH = 1000
  24. ; Patch test queue length, increase if pull request patch testing starts hanging
  25. PULL_REQUEST_QUEUE_LENGTH = 1000
  26. ; Preferred Licenses to place at the top of the List
  27. ; The name here must match the filename in conf/license or custom/conf/license
  28. PREFERRED_LICENSES = Apache License 2.0,MIT License
  29. ; Disable the ability to interact with repositories using the HTTP protocol
  30. DISABLE_HTTP_GIT = false
  31. ; Value for Access-Control-Allow-Origin header, default is not to present
  32. ; WARNING: This maybe harmful to you website if you do not give it a right value.
  33. ACCESS_CONTROL_ALLOW_ORIGIN =
  34. ; Force ssh:// clone url instead of scp-style uri when default SSH port is used
  35. USE_COMPAT_SSH_URI = false
  36. ; Close issues as long as a commit on any branch marks it as fixed
  37. DEFAULT_CLOSE_ISSUES_VIA_COMMITS_IN_ANY_BRANCH = false
  38. [repository.editor]
  39. ; List of file extensions for which lines should be wrapped in the CodeMirror editor
  40. ; Separate extensions with a comma. To line wrap files without an extension, just put a comma
  41. LINE_WRAP_EXTENSIONS = .txt,.md,.markdown,.mdown,.mkd,
  42. ; Valid file modes that have a preview API associated with them, such as api/v1/markdown
  43. ; Separate the values by commas. The preview tab in edit mode won't be displayed if the file extension doesn't match
  44. PREVIEWABLE_FILE_MODES = markdown
  45. [repository.local]
  46. ; Path for local repository copy. Defaults to `tmp/local-repo`
  47. LOCAL_COPY_PATH = tmp/local-repo
  48. ; Path for local wiki copy. Defaults to `tmp/local-wiki`
  49. LOCAL_WIKI_PATH = tmp/local-wiki
  50. [repository.upload]
  51. ; Whether repository file uploads are enabled. Defaults to `true`
  52. ENABLED = true
  53. ; Path for uploads. Defaults to `data/tmp/uploads` (tmp gets deleted on gitea restart)
  54. TEMP_PATH = data/tmp/uploads
  55. ; One or more allowed types, e.g. image/jpeg|image/png. Nothing means any file type
  56. ALLOWED_TYPES =
  57. ; Max size of each file in megabytes. Defaults to 3MB
  58. FILE_MAX_SIZE = 3
  59. ; Max number of files per upload. Defaults to 5
  60. MAX_FILES = 5
  61. [repository.pull-request]
  62. ; List of prefixes used in Pull Request title to mark them as Work In Progress
  63. WORK_IN_PROGRESS_PREFIXES=WIP:,[WIP]
  64. [repository.issue]
  65. ; List of reasons why a Pull Request or Issue can be locked
  66. LOCK_REASONS=Too heated,Off-topic,Resolved,Spam
  67. [cors]
  68. ; More information about CORS can be found here: https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS#The_HTTP_response_headers
  69. ; enable cors headers (disabled by default)
  70. ENABLED=false
  71. ; scheme of allowed requests
  72. SCHEME=http
  73. ; list of requesting domains that are allowed
  74. ALLOW_DOMAIN=*
  75. ; allow subdomains of headers listed above to request
  76. ALLOW_SUBDOMAIN=false
  77. ; list of methods allowed to request
  78. METHODS=GET,HEAD,POST,PUT,PATCH,DELETE,OPTIONS
  79. ; max time to cache response
  80. MAX_AGE=10m
  81. ; allow request with credentials
  82. ALLOW_CREDENTIALS=false
  83. [ui]
  84. ; Number of repositories that are displayed on one explore page
  85. EXPLORE_PAGING_NUM = 20
  86. ; Number of issues that are displayed on one page
  87. ISSUE_PAGING_NUM = 10
  88. ; Number of maximum commits displayed in one activity feed
  89. FEED_MAX_COMMIT_NUM = 5
  90. ; Number of maximum commits displayed in commit graph.
  91. GRAPH_MAX_COMMIT_NUM = 100
  92. ; Number of line of codes shown for a code comment
  93. CODE_COMMENT_LINES = 4
  94. ; Value of `theme-color` meta tag, used by Android >= 5.0
  95. ; An invalid color like "none" or "disable" will have the default style
  96. ; More info: https://developers.google.com/web/updates/2014/11/Support-for-theme-color-in-Chrome-39-for-Android
  97. THEME_COLOR_META_TAG = `#6cc644`
  98. ; Max size of files to be displayed (default is 8MiB)
  99. MAX_DISPLAY_FILE_SIZE = 8388608
  100. ; Whether the email of the user should be shown in the Explore Users page
  101. SHOW_USER_EMAIL = true
  102. ; Set the default theme for the Gitea install
  103. DEFAULT_THEME = gitea
  104. ; All available themes. Allow users select personalized themes regardless of the value of `DEFAULT_THEME`.
  105. THEMES = gitea,arc-green
  106. ; Whether the full name of the users should be shown where possible. If the full name isn't set, the username will be used.
  107. DEFAULT_SHOW_FULL_NAME = false
  108. [ui.admin]
  109. ; Number of users that are displayed on one page
  110. USER_PAGING_NUM = 50
  111. ; Number of repos that are displayed on one page
  112. REPO_PAGING_NUM = 50
  113. ; Number of notices that are displayed on one page
  114. NOTICE_PAGING_NUM = 25
  115. ; Number of organizations that are displayed on one page
  116. ORG_PAGING_NUM = 50
  117. [ui.user]
  118. ; Number of repos that are displayed on one page
  119. REPO_PAGING_NUM = 15
  120. [ui.meta]
  121. AUTHOR = Gitea - Git with a cup of tea
  122. DESCRIPTION = Gitea (Git with a cup of tea) is a painless self-hosted Git service written in Go
  123. KEYWORDS = go,git,self-hosted,gitea
  124. [markdown]
  125. ; Enable hard line break extension
  126. ENABLE_HARD_LINE_BREAK = false
  127. ; List of custom URL-Schemes that are allowed as links when rendering Markdown
  128. ; for example git,magnet
  129. CUSTOM_URL_SCHEMES =
  130. ; List of file extensions that should be rendered/edited as Markdown
  131. ; Separate the extensions with a comma. To render files without any extension as markdown, just put a comma
  132. FILE_EXTENSIONS = .md,.markdown,.mdown,.mkd
  133. [server]
  134. ; The protocol the server listens on. One of 'http', 'https', 'unix' or 'fcgi'.
  135. PROTOCOL = http
  136. DOMAIN = localhost
  137. ROOT_URL = %(PROTOCOL)s://%(DOMAIN)s:%(HTTP_PORT)s/
  138. ; The address to listen on. Either a IPv4/IPv6 address or the path to a unix socket.
  139. HTTP_ADDR = 0.0.0.0
  140. HTTP_PORT = 3000
  141. ; If REDIRECT_OTHER_PORT is true, and PROTOCOL is set to https an http server
  142. ; will be started on PORT_TO_REDIRECT and it will redirect plain, non-secure http requests to the main
  143. ; ROOT_URL. Defaults are false for REDIRECT_OTHER_PORT and 80 for
  144. ; PORT_TO_REDIRECT.
  145. REDIRECT_OTHER_PORT = false
  146. PORT_TO_REDIRECT = 80
  147. ; Permission for unix socket
  148. UNIX_SOCKET_PERMISSION = 666
  149. ; Local (DMZ) URL for Gitea workers (such as SSH update) accessing web service.
  150. ; In most cases you do not need to change the default value.
  151. ; Alter it only if your SSH server node is not the same as HTTP node.
  152. ; Do not set this variable if PROTOCOL is set to 'unix'.
  153. LOCAL_ROOT_URL = %(PROTOCOL)s://%(HTTP_ADDR)s:%(HTTP_PORT)s/
  154. ; Disable SSH feature when not available
  155. DISABLE_SSH = false
  156. ; Whether to use the builtin SSH server or not.
  157. START_SSH_SERVER = false
  158. ; Username to use for the builtin SSH server. If blank, then it is the value of RUN_USER.
  159. BUILTIN_SSH_SERVER_USER =
  160. ; Domain name to be exposed in clone URL
  161. SSH_DOMAIN = %(DOMAIN)s
  162. ; The network interface the builtin SSH server should listen on
  163. SSH_LISTEN_HOST =
  164. ; Port number to be exposed in clone URL
  165. SSH_PORT = 22
  166. ; The port number the builtin SSH server should listen on
  167. SSH_LISTEN_PORT = %(SSH_PORT)s
  168. ; Root path of SSH directory, default is '~/.ssh', but you have to use '/home/git/.ssh'.
  169. SSH_ROOT_PATH =
  170. ; Gitea will create a authorized_keys file by default when it is not using the internal ssh server
  171. ; If you intend to use the AuthorizedKeysCommand functionality then you should turn this off.
  172. SSH_CREATE_AUTHORIZED_KEYS_FILE = true
  173. ; For the built-in SSH server, choose the ciphers to support for SSH connections,
  174. ; for system SSH this setting has no effect
  175. SSH_SERVER_CIPHERS = aes128-ctr, aes192-ctr, aes256-ctr, aes128-gcm@openssh.com, arcfour256, arcfour128
  176. ; For the built-in SSH server, choose the key exchange algorithms to support for SSH connections,
  177. ; for system SSH this setting has no effect
  178. SSH_SERVER_KEY_EXCHANGES = diffie-hellman-group1-sha1, diffie-hellman-group14-sha1, ecdh-sha2-nistp256, ecdh-sha2-nistp384, ecdh-sha2-nistp521, curve25519-sha256@libssh.org
  179. ; For the built-in SSH server, choose the MACs to support for SSH connections,
  180. ; for system SSH this setting has no effect
  181. SSH_SERVER_MACS = hmac-sha2-256-etm@openssh.com, hmac-sha2-256, hmac-sha1, hmac-sha1-96
  182. ; Directory to create temporary files in when testing public keys using ssh-keygen,
  183. ; default is the system temporary directory.
  184. SSH_KEY_TEST_PATH =
  185. ; Path to ssh-keygen, default is 'ssh-keygen' which means the shell is responsible for finding out which one to call.
  186. SSH_KEYGEN_PATH = ssh-keygen
  187. ; Enable SSH Authorized Key Backup when rewriting all keys, default is true
  188. SSH_BACKUP_AUTHORIZED_KEYS = true
  189. ; Enable exposure of SSH clone URL to anonymous visitors, default is false
  190. SSH_EXPOSE_ANONYMOUS = false
  191. ; Indicate whether to check minimum key size with corresponding type
  192. MINIMUM_KEY_SIZE_CHECK = false
  193. ; Disable CDN even in "prod" mode
  194. OFFLINE_MODE = false
  195. DISABLE_ROUTER_LOG = false
  196. ; Generate steps:
  197. ; $ ./gitea cert -ca=true -duration=8760h0m0s -host=myhost.example.com
  198. ;
  199. ; Or from a .pfx file exported from the Windows certificate store (do
  200. ; not forget to export the private key):
  201. ; $ openssl pkcs12 -in cert.pfx -out cert.pem -nokeys
  202. ; $ openssl pkcs12 -in cert.pfx -out key.pem -nocerts -nodes
  203. CERT_FILE = custom/https/cert.pem
  204. KEY_FILE = custom/https/key.pem
  205. ; Root directory containing templates and static files.
  206. ; default is the path where Gitea is executed
  207. STATIC_ROOT_PATH =
  208. ; Default path for App data
  209. APP_DATA_PATH = data
  210. ; Application level GZIP support
  211. ENABLE_GZIP = false
  212. ; Application profiling (memory and cpu)
  213. ; For "web" command it listens on localhost:6060
  214. ; For "serve" command it dumps to disk at PPROF_DATA_PATH as (cpuprofile|memprofile)_<username>_<temporary id>
  215. ENABLE_PPROF = false
  216. ; PPROF_DATA_PATH, use an absolute path when you start gitea as service
  217. PPROF_DATA_PATH = data/tmp/pprof
  218. ; Landing page, can be "home", "explore", or "organizations"
  219. LANDING_PAGE = home
  220. ; Enables git-lfs support. true or false, default is false.
  221. LFS_START_SERVER = false
  222. ; Where your lfs files reside, default is data/lfs.
  223. LFS_CONTENT_PATH = data/lfs
  224. ; LFS authentication secret, change this yourself
  225. LFS_JWT_SECRET =
  226. ; LFS authentication validity period (in time.Duration), pushes taking longer than this may fail.
  227. LFS_HTTP_AUTH_EXPIRY = 20m
  228. ; Define allowed algorithms and their minimum key length (use -1 to disable a type)
  229. [ssh.minimum_key_sizes]
  230. ED25519 = 256
  231. ECDSA = 256
  232. RSA = 2048
  233. DSA = 1024
  234. [database]
  235. ; Either "mysql", "postgres", "mssql" or "sqlite3", it's your choice
  236. DB_TYPE = mysql
  237. HOST = 127.0.0.1:3306
  238. NAME = gitea
  239. USER = root
  240. ; Use PASSWD = `your password` for quoting if you use special characters in the password.
  241. PASSWD =
  242. ; For Postgres, either "disable" (default), "require", or "verify-full"
  243. ; For MySQL, either "false" (default), "true", or "skip-verify"
  244. SSL_MODE = disable
  245. ; For "sqlite3" and "tidb", use an absolute path when you start gitea as service
  246. PATH = data/gitea.db
  247. ; For "sqlite3" only. Query timeout
  248. SQLITE_TIMEOUT = 500
  249. ; For iterate buffer, default is 50
  250. ITERATE_BUFFER_SIZE = 50
  251. ; Show the database generated SQL
  252. LOG_SQL = true
  253. ; Maximum number of DB Connect retries
  254. DB_RETRIES = 10
  255. ; Backoff time per DB retry (time.Duration)
  256. DB_RETRY_BACKOFF = 3s
  257. [indexer]
  258. ; Issue indexer type, currently support: bleve or db, default is bleve
  259. ISSUE_INDEXER_TYPE = bleve
  260. ; Issue indexer storage path, available when ISSUE_INDEXER_TYPE is bleve
  261. ISSUE_INDEXER_PATH = indexers/issues.bleve
  262. ; Issue indexer queue, currently support: channel or levelqueue, default is levelqueue
  263. ISSUE_INDEXER_QUEUE_TYPE = levelqueue
  264. ; When ISSUE_INDEXER_QUEUE_TYPE is levelqueue, this will be the queue will be saved path,
  265. ; default is indexers/issues.queue
  266. ISSUE_INDEXER_QUEUE_DIR = indexers/issues.queue
  267. ; When `ISSUE_INDEXER_QUEUE_TYPE` is `redis`, this will store the redis connection string.
  268. ISSUE_INDEXER_QUEUE_CONN_STR = "addrs=127.0.0.1:6379 db=0"
  269. ; Batch queue number, default is 20
  270. ISSUE_INDEXER_QUEUE_BATCH_NUMBER = 20
  271. ; repo indexer by default disabled, since it uses a lot of disk space
  272. REPO_INDEXER_ENABLED = false
  273. REPO_INDEXER_PATH = indexers/repos.bleve
  274. UPDATE_BUFFER_LEN = 20
  275. MAX_FILE_SIZE = 1048576
  276. [admin]
  277. ; Disallow regular (non-admin) users from creating organizations.
  278. DISABLE_REGULAR_ORG_CREATION = false
  279. [security]
  280. ; Whether the installer is disabled
  281. INSTALL_LOCK = false
  282. ; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
  283. SECRET_KEY = !#@FDEWREWR&*(
  284. ; How long to remember that an user is logged in before requiring relogin (in days)
  285. LOGIN_REMEMBER_DAYS = 7
  286. COOKIE_USERNAME = gitea_awesome
  287. COOKIE_REMEMBER_NAME = gitea_incredible
  288. ; Reverse proxy authentication header name of user name
  289. REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER
  290. REVERSE_PROXY_AUTHENTICATION_EMAIL = X-WEBAUTH-EMAIL
  291. ; The minimum password length for new Users
  292. MIN_PASSWORD_LENGTH = 6
  293. ; Set to true to allow users to import local server paths
  294. IMPORT_LOCAL_PATHS = false
  295. ; Set to true to prevent all users (including admin) from creating custom git hooks
  296. DISABLE_GIT_HOOKS = false
  297. [openid]
  298. ;
  299. ; OpenID is an open, standard and decentralized authentication protocol.
  300. ; Your identity is the address of a webpage you provide, which describes
  301. ; how to prove you are in control of that page.
  302. ;
  303. ; For more info: https://en.wikipedia.org/wiki/OpenID
  304. ;
  305. ; Current implementation supports OpenID-2.0
  306. ;
  307. ; Tested to work providers at the time of writing:
  308. ; - Any GNUSocial node (your.hostname.tld/username)
  309. ; - Any SimpleID provider (http://simpleid.koinic.net)
  310. ; - http://openid.org.cn/
  311. ; - openid.stackexchange.com
  312. ; - login.launchpad.net
  313. ; - <username>.livejournal.com
  314. ;
  315. ; Whether to allow signin in via OpenID
  316. ENABLE_OPENID_SIGNIN = true
  317. ; Whether to allow registering via OpenID
  318. ; Do not include to rely on rhw DISABLE_REGISTRATION setting
  319. ;ENABLE_OPENID_SIGNUP = true
  320. ; Allowed URI patterns (POSIX regexp).
  321. ; Space separated.
  322. ; Only these would be allowed if non-blank.
  323. ; Example value: trusted.domain.org trusted.domain.net
  324. WHITELISTED_URIS =
  325. ; Forbidden URI patterns (POSIX regexp).
  326. ; Space separated.
  327. ; Only used if WHITELISTED_URIS is blank.
  328. ; Example value: loadaverage.org/badguy stackexchange.com/.*spammer
  329. BLACKLISTED_URIS =
  330. [service]
  331. ; Time limit to confirm account/email registration
  332. ACTIVE_CODE_LIVE_MINUTES = 180
  333. ; Time limit to perform the reset of a forgotten password
  334. RESET_PASSWD_CODE_LIVE_MINUTES = 180
  335. ; Whether a new user needs to confirm their email when registering.
  336. REGISTER_EMAIL_CONFIRM = false
  337. ; List of domain names that are allowed to be used to register on a Gitea instance
  338. ; gitea.io,example.com
  339. EMAIL_DOMAIN_WHITELIST=
  340. ; Disallow registration, only allow admins to create accounts.
  341. DISABLE_REGISTRATION = false
  342. ; Allow registration only using third-party services, it works only when DISABLE_REGISTRATION is false
  343. ALLOW_ONLY_EXTERNAL_REGISTRATION = false
  344. ; User must sign in to view anything.
  345. REQUIRE_SIGNIN_VIEW = false
  346. ; Mail notification
  347. ENABLE_NOTIFY_MAIL = false
  348. ; More detail: https://github.com/gogits/gogs/issues/165
  349. ENABLE_REVERSE_PROXY_AUTHENTICATION = false
  350. ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false
  351. ENABLE_REVERSE_PROXY_EMAIL = false
  352. ; Enable captcha validation for registration
  353. ENABLE_CAPTCHA = false
  354. ; Type of captcha you want to use. Options: image, recaptcha
  355. CAPTCHA_TYPE = image
  356. ; Enable recaptcha to use Google's recaptcha service
  357. ; Go to https://www.google.com/recaptcha/admin to sign up for a key
  358. RECAPTCHA_SECRET =
  359. RECAPTCHA_SITEKEY =
  360. ; Change this to use recaptcha.net or other recaptcha service
  361. RECAPTCHA_URL = https://www.google.com/recaptcha/
  362. ; Default value for KeepEmailPrivate
  363. ; Each new user will get the value of this setting copied into their profile
  364. DEFAULT_KEEP_EMAIL_PRIVATE = false
  365. ; Default value for AllowCreateOrganization
  366. ; Every new user will have rights set to create organizations depending on this setting
  367. DEFAULT_ALLOW_CREATE_ORGANIZATION = true
  368. ; Either "public", "limited" or "private", default is "public"
  369. ; Limited is for signed user only
  370. ; Private is only for member of the organization
  371. ; Public is for everyone
  372. DEFAULT_ORG_VISIBILITY = public
  373. ; Default value for EnableDependencies
  374. ; Repositories will use dependencies by default depending on this setting
  375. DEFAULT_ENABLE_DEPENDENCIES = true
  376. ; Enable heatmap on users profiles.
  377. ENABLE_USER_HEATMAP = true
  378. ; Enable Timetracking
  379. ENABLE_TIMETRACKING = true
  380. ; Default value for EnableTimetracking
  381. ; Repositories will use timetracking by default depending on this setting
  382. DEFAULT_ENABLE_TIMETRACKING = true
  383. ; Default value for AllowOnlyContributorsToTrackTime
  384. ; Only users with write permissions can track time if this is true
  385. DEFAULT_ALLOW_ONLY_CONTRIBUTORS_TO_TRACK_TIME = true
  386. ; Default value for the domain part of the user's email address in the git log
  387. ; if he has set KeepEmailPrivate to true. The user's email will be replaced with a
  388. ; concatenation of the user name in lower case, "@" and NO_REPLY_ADDRESS.
  389. NO_REPLY_ADDRESS = noreply.example.org
  390. ; Show Registration button
  391. SHOW_REGISTRATION_BUTTON = true
  392. ; Default value for AutoWatchNewRepos
  393. ; When adding a repo to a team or creating a new repo all team members will watch the
  394. ; repo automatically if enabled
  395. AUTO_WATCH_NEW_REPOS = true
  396. [webhook]
  397. ; Hook task queue length, increase if webhook shooting starts hanging
  398. QUEUE_LENGTH = 1000
  399. ; Deliver timeout in seconds
  400. DELIVER_TIMEOUT = 5
  401. ; Allow insecure certification
  402. SKIP_TLS_VERIFY = false
  403. ; Number of history information in each page
  404. PAGING_NUM = 10
  405. [mailer]
  406. ENABLED = false
  407. ; Buffer length of channel, keep it as it is if you don't know what it is.
  408. SEND_BUFFER_LEN = 100
  409. ; Prefix displayed before subject in mail
  410. SUBJECT_PREFIX =
  411. ; Mail server
  412. ; Gmail: smtp.gmail.com:587
  413. ; QQ: smtp.qq.com:465
  414. ; 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.
  415. HOST =
  416. ; Disable HELO operation when hostnames are different.
  417. DISABLE_HELO =
  418. ; Custom hostname for HELO operation, if no value is provided, one is retrieved from system.
  419. HELO_HOSTNAME =
  420. ; Do not verify the certificate of the server. Only use this for self-signed certificates
  421. SKIP_VERIFY =
  422. ; Use client certificate
  423. USE_CERTIFICATE = false
  424. CERT_FILE = custom/mailer/cert.pem
  425. KEY_FILE = custom/mailer/key.pem
  426. ; Should SMTP connection use TLS
  427. IS_TLS_ENABLED = false
  428. ; Mail from address, RFC 5322. This can be just an email address, or the `"Name" <email@example.com>` format
  429. FROM =
  430. ; Mailer user name and password
  431. USER =
  432. ; Use PASSWD = `your password` for quoting if you use special characters in the password.
  433. PASSWD =
  434. ; Send mails as plain text
  435. SEND_AS_PLAIN_TEXT = false
  436. ; Set Mailer Type (either SMTP, sendmail or dummy to just send to the log)
  437. MAILER_TYPE = smtp
  438. ; Specify an alternative sendmail binary
  439. SENDMAIL_PATH = sendmail
  440. ; Specify any extra sendmail arguments
  441. SENDMAIL_ARGS =
  442. [cache]
  443. ; Either "memory", "redis", or "memcache", default is "memory"
  444. ADAPTER = memory
  445. ; For "memory" only, GC interval in seconds, default is 60
  446. INTERVAL = 60
  447. ; For "redis" and "memcache", connection host address
  448. ; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
  449. ; memcache: `127.0.0.1:11211`
  450. HOST =
  451. ; Time to keep items in cache if not used, default is 16 hours.
  452. ; Setting it to 0 disables caching
  453. ITEM_TTL = 16h
  454. [session]
  455. ; Either "memory", "file", or "redis", default is "memory"
  456. PROVIDER = memory
  457. ; Provider config options
  458. ; memory: doesn't have any config yet
  459. ; file: session file path, e.g. `data/sessions`
  460. ; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
  461. ; mysql: go-sql-driver/mysql dsn config string, e.g. `root:password@/session_table`
  462. PROVIDER_CONFIG = data/sessions
  463. ; Session cookie name
  464. COOKIE_NAME = i_like_gitea
  465. ; If you use session in https only, default is false
  466. COOKIE_SECURE = false
  467. ; Enable set cookie, default is true
  468. ENABLE_SET_COOKIE = true
  469. ; Session GC time interval in seconds, default is 86400 (1 day)
  470. GC_INTERVAL_TIME = 86400
  471. ; Session life time in seconds, default is 86400 (1 day)
  472. SESSION_LIFE_TIME = 86400
  473. [picture]
  474. AVATAR_UPLOAD_PATH = data/avatars
  475. ; Max Width and Height of uploaded avatars. This is to limit the amount of RAM
  476. ; used when resizing the image.
  477. AVATAR_MAX_WIDTH = 4096
  478. AVATAR_MAX_HEIGHT = 3072
  479. ; Chinese users can choose "duoshuo"
  480. ; or a custom avatar source, like: http://cn.gravatar.com/avatar/
  481. GRAVATAR_SOURCE = gravatar
  482. ; This value will always be true in offline mode.
  483. DISABLE_GRAVATAR = false
  484. ; Federated avatar lookup uses DNS to discover avatar associated
  485. ; with emails, see https://www.libravatar.org
  486. ; This value will always be false in offline mode or when Gravatar is disabled.
  487. ENABLE_FEDERATED_AVATAR = false
  488. [attachment]
  489. ; Whether attachments are enabled. Defaults to `true`
  490. ENABLED = true
  491. ; Path for attachments. Defaults to `data/attachments`
  492. PATH = data/attachments
  493. ; One or more allowed types, e.g. image/jpeg|image/png
  494. ALLOWED_TYPES = image/jpeg|image/png|application/zip|application/gzip
  495. ; Max size of each file. Defaults to 4MB
  496. MAX_SIZE = 4
  497. ; Max number of files per upload. Defaults to 5
  498. MAX_FILES = 5
  499. [time]
  500. ; Specifies the format for fully outputted dates. Defaults to RFC1123
  501. ; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano
  502. ; For more information about the format see http://golang.org/pkg/time/#pkg-constants
  503. FORMAT =
  504. [log]
  505. ROOT_PATH =
  506. ; Either "console", "file", "conn", "smtp" or "database", default is "console"
  507. ; Use comma to separate multiple modes, e.g. "console, file"
  508. MODE = console
  509. ; Buffer length of the channel, keep it as it is if you don't know what it is.
  510. BUFFER_LEN = 10000
  511. REDIRECT_MACARON_LOG = false
  512. MACARON = file
  513. ; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Info"
  514. ROUTER_LOG_LEVEL = Info
  515. ROUTER = console
  516. ENABLE_ACCESS_LOG = false
  517. ACCESS_LOG_TEMPLATE = {{.Ctx.RemoteAddr}} - {{.Identity}} {{.Start.Format "[02/Jan/2006:15:04:05 -0700]" }} "{{.Ctx.Req.Method}} {{.Ctx.Req.RequestURI}} {{.Ctx.Req.Proto}}" {{.ResponseWriter.Status}} {{.ResponseWriter.Size}} "{{.Ctx.Req.Referer}}\" \"{{.Ctx.Req.UserAgent}}"
  518. ACCESS = file
  519. ; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Trace"
  520. LEVEL = Info
  521. ; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "None"
  522. STACKTRACE_LEVEL = None
  523. ; Generic log modes
  524. [log.x]
  525. FLAGS = stdflags
  526. EXPRESSION =
  527. PREFIX =
  528. COLORIZE = false
  529. ; For "console" mode only
  530. [log.console]
  531. LEVEL =
  532. STDERR = false
  533. ; For "file" mode only
  534. [log.file]
  535. LEVEL =
  536. ; Set the file_name for the logger. If this is a relative path this
  537. ; will be relative to ROOT_PATH
  538. FILE_NAME =
  539. ; This enables automated log rotate(switch of following options), default is true
  540. LOG_ROTATE = true
  541. ; Max number of lines in a single file, default is 1000000
  542. MAX_LINES = 1000000
  543. ; Max size shift of a single file, default is 28 means 1 << 28, 256MB
  544. MAX_SIZE_SHIFT = 28
  545. ; Segment log daily, default is true
  546. DAILY_ROTATE = true
  547. ; delete the log file after n days, default is 7
  548. MAX_DAYS = 7
  549. ; compress logs with gzip
  550. COMPRESS = true
  551. ; compression level see godoc for compress/gzip
  552. COMPRESSION_LEVEL = -1
  553. ; For "conn" mode only
  554. [log.conn]
  555. LEVEL =
  556. ; Reconnect host for every single message, default is false
  557. RECONNECT_ON_MSG = false
  558. ; Try to reconnect when connection is lost, default is false
  559. RECONNECT = false
  560. ; Either "tcp", "unix" or "udp", default is "tcp"
  561. PROTOCOL = tcp
  562. ; Host address
  563. ADDR =
  564. ; For "smtp" mode only
  565. [log.smtp]
  566. LEVEL =
  567. ; Name displayed in mail title, default is "Diagnostic message from server"
  568. SUBJECT = Diagnostic message from server
  569. ; Mail server
  570. HOST =
  571. ; Mailer user name and password
  572. USER =
  573. ; Use PASSWD = `your password` for quoting if you use special characters in the password.
  574. PASSWD =
  575. ; Receivers, can be one or more, e.g. 1@example.com,2@example.com
  576. RECEIVERS =
  577. [cron]
  578. ; Enable running cron tasks periodically.
  579. ENABLED = true
  580. ; Run cron tasks when Gitea starts.
  581. RUN_AT_START = false
  582. ; Update mirrors
  583. [cron.update_mirrors]
  584. SCHEDULE = @every 10m
  585. ; Repository health check
  586. [cron.repo_health_check]
  587. SCHEDULE = @every 24h
  588. TIMEOUT = 60s
  589. ; Arguments for command 'git fsck', e.g. "--unreachable --tags"
  590. ; see more on http://git-scm.com/docs/git-fsck
  591. ARGS =
  592. ; Check repository statistics
  593. [cron.check_repo_stats]
  594. RUN_AT_START = true
  595. SCHEDULE = @every 24h
  596. ; Clean up old repository archives
  597. [cron.archive_cleanup]
  598. ; Whether to enable the job
  599. ENABLED = true
  600. ; Whether to always run at least once at start up time (if ENABLED)
  601. RUN_AT_START = true
  602. ; Time interval for job to run
  603. SCHEDULE = @every 24h
  604. ; Archives created more than OLDER_THAN ago are subject to deletion
  605. OLDER_THAN = 24h
  606. ; Synchronize external user data (only LDAP user synchronization is supported)
  607. [cron.sync_external_users]
  608. ; Synchronize external user data when starting server (default false)
  609. RUN_AT_START = false
  610. ; Interval as a duration between each synchronization (default every 24h)
  611. SCHEDULE = @every 24h
  612. ; Create new users, update existing user data and disable users that are not in external source anymore (default)
  613. ; or only create new users if UPDATE_EXISTING is set to false
  614. UPDATE_EXISTING = true
  615. [git]
  616. ; Disables highlight of added and removed changes
  617. DISABLE_DIFF_HIGHLIGHT = false
  618. ; Max number of lines allowed in a single file in diff view
  619. MAX_GIT_DIFF_LINES = 1000
  620. ; Max number of allowed characters in a line in diff view
  621. MAX_GIT_DIFF_LINE_CHARACTERS = 5000
  622. ; Max number of files shown in diff view
  623. MAX_GIT_DIFF_FILES = 100
  624. ; Arguments for command 'git gc', e.g. "--aggressive --auto"
  625. ; see more on http://git-scm.com/docs/git-gc/
  626. GC_ARGS =
  627. ; Operation timeout in seconds
  628. [git.timeout]
  629. DEFAULT = 360
  630. MIGRATE = 600
  631. MIRROR = 300
  632. CLONE = 300
  633. PULL = 300
  634. GC = 60
  635. [mirror]
  636. ; Default interval as a duration between each check
  637. DEFAULT_INTERVAL = 8h
  638. ; Min interval as a duration must be > 1m
  639. MIN_INTERVAL = 10m
  640. [api]
  641. ; Enables Swagger. True or false; default is true.
  642. ENABLE_SWAGGER = true
  643. ; Max number of items in a page
  644. MAX_RESPONSE_ITEMS = 50
  645. ; Default paging number of api
  646. DEFAULT_PAGING_NUM = 30
  647. ; Default and maximum number of items per page for git trees api
  648. DEFAULT_GIT_TREES_PER_PAGE = 1000
  649. ; Default size of a blob returned by the blobs API (default is 10MiB)
  650. DEFAULT_MAX_BLOB_SIZE = 10485760
  651. [oauth2]
  652. ; Enables OAuth2 provider
  653. ENABLED = true
  654. ; Lifetime of an OAuth2 access token in seconds
  655. ACCESS_TOKEN_EXPIRATION_TIME=3600
  656. ; Lifetime of an OAuth2 access token in hours
  657. REFRESH_TOKEN_EXPIRATION_TIME=730
  658. ; Check if refresh token got already used
  659. INVALIDATE_REFRESH_TOKENS=false
  660. ; OAuth2 authentication secret for access and refresh tokens, change this a unique string.
  661. JWT_SECRET=Bk0yK7Y9g_p56v86KaHqjSbxvNvu3SbKoOdOt2ZcXvU
  662. [i18n]
  663. LANGS = en-US,zh-CN,zh-HK,zh-TW,de-DE,fr-FR,nl-NL,lv-LV,ru-RU,uk-UA,ja-JP,es-ES,pt-BR,pl-PL,bg-BG,it-IT,fi-FI,tr-TR,cs-CZ,sr-SP,sv-SE,ko-KR
  664. NAMES = English,简体中文,繁體中文(香港),繁體中文(台灣),Deutsch,français,Nederlands,latviešu,русский,Українська,日本語,español,português do Brasil,polski,български,italiano,suomi,Türkçe,čeština,српски,svenska,한국어
  665. ; Used for datetimepicker
  666. [i18n.datelang]
  667. en-US = en
  668. zh-CN = zh
  669. zh-HK = zh-HK
  670. zh-TW = zh-TW
  671. de-DE = de
  672. fr-FR = fr
  673. nl-NL = nl
  674. lv-LV = lv
  675. ru-RU = ru
  676. uk-UA = uk
  677. ja-JP = ja
  678. es-ES = es
  679. pt-BR = pt-BR
  680. pl-PL = pl
  681. bg-BG = bg
  682. it-IT = it
  683. fi-FI = fi
  684. tr-TR = tr
  685. cs-CZ = cs-CZ
  686. sr-SP = sr
  687. sv-SE = sv
  688. ko-KR = ko
  689. [U2F]
  690. ; NOTE: THE DEFAULT VALUES HERE WILL NEED TO BE CHANGED
  691. ; Two Factor authentication with security keys
  692. ; https://developers.yubico.com/U2F/App_ID.html
  693. ;APP_ID = http://localhost:3000/
  694. ; Comma seperated list of trusted facets
  695. ;TRUSTED_FACETS = http://localhost:3000/
  696. ; Extension mapping to highlight class
  697. ; e.g. .toml=ini
  698. [highlight.mapping]
  699. [other]
  700. SHOW_FOOTER_BRANDING = false
  701. ; Show version information about Gitea and Go in the footer
  702. SHOW_FOOTER_VERSION = true
  703. ; Show template execution time in the footer
  704. SHOW_FOOTER_TEMPLATE_LOAD_TIME = true
  705. [markup.asciidoc]
  706. ENABLED = false
  707. ; List of file extensions that should be rendered by an external command
  708. FILE_EXTENSIONS = .adoc,.asciidoc
  709. ; External command to render all matching extensions
  710. RENDER_COMMAND = "asciidoc --out-file=- -"
  711. ; Don't pass the file on STDIN, pass the filename as argument instead.
  712. IS_INPUT_FILE = false
  713. [metrics]
  714. ; Enables metrics endpoint. True or false; default is false.
  715. ENABLED = false
  716. ; If you want to add authorization, specify a token here
  717. TOKEN =