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

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785
  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 MySQL only, either "utf8" or "utf8mb4", default is "utf8".
  246. ; NOTICE: for "utf8mb4" you must use MySQL InnoDB > 5.6. Gitea is unable to check this.
  247. CHARSET = utf8
  248. ; For "sqlite3" and "tidb", use an absolute path when you start gitea as service
  249. PATH = data/gitea.db
  250. ; For "sqlite3" only. Query timeout
  251. SQLITE_TIMEOUT = 500
  252. ; For iterate buffer, default is 50
  253. ITERATE_BUFFER_SIZE = 50
  254. ; Show the database generated SQL
  255. LOG_SQL = true
  256. ; Maximum number of DB Connect retries
  257. DB_RETRIES = 10
  258. ; Backoff time per DB retry (time.Duration)
  259. DB_RETRY_BACKOFF = 3s
  260. [indexer]
  261. ; Issue indexer type, currently support: bleve or db, default is bleve
  262. ISSUE_INDEXER_TYPE = bleve
  263. ; Issue indexer storage path, available when ISSUE_INDEXER_TYPE is bleve
  264. ISSUE_INDEXER_PATH = indexers/issues.bleve
  265. ; Issue indexer queue, currently support: channel or levelqueue, default is levelqueue
  266. ISSUE_INDEXER_QUEUE_TYPE = levelqueue
  267. ; When ISSUE_INDEXER_QUEUE_TYPE is levelqueue, this will be the queue will be saved path,
  268. ; default is indexers/issues.queue
  269. ISSUE_INDEXER_QUEUE_DIR = indexers/issues.queue
  270. ; When `ISSUE_INDEXER_QUEUE_TYPE` is `redis`, this will store the redis connection string.
  271. ISSUE_INDEXER_QUEUE_CONN_STR = "addrs=127.0.0.1:6379 db=0"
  272. ; Batch queue number, default is 20
  273. ISSUE_INDEXER_QUEUE_BATCH_NUMBER = 20
  274. ; repo indexer by default disabled, since it uses a lot of disk space
  275. REPO_INDEXER_ENABLED = false
  276. REPO_INDEXER_PATH = indexers/repos.bleve
  277. UPDATE_BUFFER_LEN = 20
  278. MAX_FILE_SIZE = 1048576
  279. [admin]
  280. ; Disallow regular (non-admin) users from creating organizations.
  281. DISABLE_REGULAR_ORG_CREATION = false
  282. [security]
  283. ; Whether the installer is disabled
  284. INSTALL_LOCK = false
  285. ; !!CHANGE THIS TO KEEP YOUR USER DATA SAFE!!
  286. SECRET_KEY = !#@FDEWREWR&*(
  287. ; How long to remember that an user is logged in before requiring relogin (in days)
  288. LOGIN_REMEMBER_DAYS = 7
  289. COOKIE_USERNAME = gitea_awesome
  290. COOKIE_REMEMBER_NAME = gitea_incredible
  291. ; Reverse proxy authentication header name of user name
  292. REVERSE_PROXY_AUTHENTICATION_USER = X-WEBAUTH-USER
  293. REVERSE_PROXY_AUTHENTICATION_EMAIL = X-WEBAUTH-EMAIL
  294. ; The minimum password length for new Users
  295. MIN_PASSWORD_LENGTH = 6
  296. ; Set to true to allow users to import local server paths
  297. IMPORT_LOCAL_PATHS = false
  298. ; Set to true to prevent all users (including admin) from creating custom git hooks
  299. DISABLE_GIT_HOOKS = false
  300. [openid]
  301. ;
  302. ; OpenID is an open, standard and decentralized authentication protocol.
  303. ; Your identity is the address of a webpage you provide, which describes
  304. ; how to prove you are in control of that page.
  305. ;
  306. ; For more info: https://en.wikipedia.org/wiki/OpenID
  307. ;
  308. ; Current implementation supports OpenID-2.0
  309. ;
  310. ; Tested to work providers at the time of writing:
  311. ; - Any GNUSocial node (your.hostname.tld/username)
  312. ; - Any SimpleID provider (http://simpleid.koinic.net)
  313. ; - http://openid.org.cn/
  314. ; - openid.stackexchange.com
  315. ; - login.launchpad.net
  316. ; - <username>.livejournal.com
  317. ;
  318. ; Whether to allow signin in via OpenID
  319. ENABLE_OPENID_SIGNIN = true
  320. ; Whether to allow registering via OpenID
  321. ; Do not include to rely on rhw DISABLE_REGISTRATION setting
  322. ;ENABLE_OPENID_SIGNUP = true
  323. ; Allowed URI patterns (POSIX regexp).
  324. ; Space separated.
  325. ; Only these would be allowed if non-blank.
  326. ; Example value: trusted.domain.org trusted.domain.net
  327. WHITELISTED_URIS =
  328. ; Forbidden URI patterns (POSIX regexp).
  329. ; Space separated.
  330. ; Only used if WHITELISTED_URIS is blank.
  331. ; Example value: loadaverage.org/badguy stackexchange.com/.*spammer
  332. BLACKLISTED_URIS =
  333. [service]
  334. ; Time limit to confirm account/email registration
  335. ACTIVE_CODE_LIVE_MINUTES = 180
  336. ; Time limit to perform the reset of a forgotten password
  337. RESET_PASSWD_CODE_LIVE_MINUTES = 180
  338. ; Whether a new user needs to confirm their email when registering.
  339. REGISTER_EMAIL_CONFIRM = false
  340. ; List of domain names that are allowed to be used to register on a Gitea instance
  341. ; gitea.io,example.com
  342. EMAIL_DOMAIN_WHITELIST=
  343. ; Disallow registration, only allow admins to create accounts.
  344. DISABLE_REGISTRATION = false
  345. ; Allow registration only using third-party services, it works only when DISABLE_REGISTRATION is false
  346. ALLOW_ONLY_EXTERNAL_REGISTRATION = false
  347. ; User must sign in to view anything.
  348. REQUIRE_SIGNIN_VIEW = false
  349. ; Mail notification
  350. ENABLE_NOTIFY_MAIL = false
  351. ; More detail: https://github.com/gogits/gogs/issues/165
  352. ENABLE_REVERSE_PROXY_AUTHENTICATION = false
  353. ENABLE_REVERSE_PROXY_AUTO_REGISTRATION = false
  354. ENABLE_REVERSE_PROXY_EMAIL = false
  355. ; Enable captcha validation for registration
  356. ENABLE_CAPTCHA = false
  357. ; Type of captcha you want to use. Options: image, recaptcha
  358. CAPTCHA_TYPE = image
  359. ; Enable recaptcha to use Google's recaptcha service
  360. ; Go to https://www.google.com/recaptcha/admin to sign up for a key
  361. RECAPTCHA_SECRET =
  362. RECAPTCHA_SITEKEY =
  363. ; Change this to use recaptcha.net or other recaptcha service
  364. RECAPTCHA_URL = https://www.google.com/recaptcha/
  365. ; Default value for KeepEmailPrivate
  366. ; Each new user will get the value of this setting copied into their profile
  367. DEFAULT_KEEP_EMAIL_PRIVATE = false
  368. ; Default value for AllowCreateOrganization
  369. ; Every new user will have rights set to create organizations depending on this setting
  370. DEFAULT_ALLOW_CREATE_ORGANIZATION = true
  371. ; Either "public", "limited" or "private", default is "public"
  372. ; Limited is for signed user only
  373. ; Private is only for member of the organization
  374. ; Public is for everyone
  375. DEFAULT_ORG_VISIBILITY = public
  376. ; Default value for EnableDependencies
  377. ; Repositories will use dependencies by default depending on this setting
  378. DEFAULT_ENABLE_DEPENDENCIES = true
  379. ; Enable heatmap on users profiles.
  380. ENABLE_USER_HEATMAP = true
  381. ; Enable Timetracking
  382. ENABLE_TIMETRACKING = true
  383. ; Default value for EnableTimetracking
  384. ; Repositories will use timetracking by default depending on this setting
  385. DEFAULT_ENABLE_TIMETRACKING = true
  386. ; Default value for AllowOnlyContributorsToTrackTime
  387. ; Only users with write permissions can track time if this is true
  388. DEFAULT_ALLOW_ONLY_CONTRIBUTORS_TO_TRACK_TIME = true
  389. ; Default value for the domain part of the user's email address in the git log
  390. ; if he has set KeepEmailPrivate to true. The user's email will be replaced with a
  391. ; concatenation of the user name in lower case, "@" and NO_REPLY_ADDRESS.
  392. NO_REPLY_ADDRESS = noreply.example.org
  393. ; Show Registration button
  394. SHOW_REGISTRATION_BUTTON = true
  395. ; Default value for AutoWatchNewRepos
  396. ; When adding a repo to a team or creating a new repo all team members will watch the
  397. ; repo automatically if enabled
  398. AUTO_WATCH_NEW_REPOS = true
  399. [webhook]
  400. ; Hook task queue length, increase if webhook shooting starts hanging
  401. QUEUE_LENGTH = 1000
  402. ; Deliver timeout in seconds
  403. DELIVER_TIMEOUT = 5
  404. ; Allow insecure certification
  405. SKIP_TLS_VERIFY = false
  406. ; Number of history information in each page
  407. PAGING_NUM = 10
  408. [mailer]
  409. ENABLED = false
  410. ; Buffer length of channel, keep it as it is if you don't know what it is.
  411. SEND_BUFFER_LEN = 100
  412. ; Prefix displayed before subject in mail
  413. SUBJECT_PREFIX =
  414. ; Mail server
  415. ; Gmail: smtp.gmail.com:587
  416. ; QQ: smtp.qq.com:465
  417. ; 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.
  418. HOST =
  419. ; Disable HELO operation when hostnames are different.
  420. DISABLE_HELO =
  421. ; Custom hostname for HELO operation, if no value is provided, one is retrieved from system.
  422. HELO_HOSTNAME =
  423. ; Do not verify the certificate of the server. Only use this for self-signed certificates
  424. SKIP_VERIFY =
  425. ; Use client certificate
  426. USE_CERTIFICATE = false
  427. CERT_FILE = custom/mailer/cert.pem
  428. KEY_FILE = custom/mailer/key.pem
  429. ; Should SMTP connection use TLS
  430. IS_TLS_ENABLED = false
  431. ; Mail from address, RFC 5322. This can be just an email address, or the `"Name" <email@example.com>` format
  432. FROM =
  433. ; Mailer user name and password
  434. USER =
  435. ; Use PASSWD = `your password` for quoting if you use special characters in the password.
  436. PASSWD =
  437. ; Send mails as plain text
  438. SEND_AS_PLAIN_TEXT = false
  439. ; Set Mailer Type (either SMTP, sendmail or dummy to just send to the log)
  440. MAILER_TYPE = smtp
  441. ; Specify an alternative sendmail binary
  442. SENDMAIL_PATH = sendmail
  443. ; Specify any extra sendmail arguments
  444. SENDMAIL_ARGS =
  445. [cache]
  446. ; Either "memory", "redis", or "memcache", default is "memory"
  447. ADAPTER = memory
  448. ; For "memory" only, GC interval in seconds, default is 60
  449. INTERVAL = 60
  450. ; For "redis" and "memcache", connection host address
  451. ; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
  452. ; memcache: `127.0.0.1:11211`
  453. HOST =
  454. ; Time to keep items in cache if not used, default is 16 hours.
  455. ; Setting it to 0 disables caching
  456. ITEM_TTL = 16h
  457. [session]
  458. ; Either "memory", "file", or "redis", default is "memory"
  459. PROVIDER = memory
  460. ; Provider config options
  461. ; memory: doesn't have any config yet
  462. ; file: session file path, e.g. `data/sessions`
  463. ; redis: network=tcp,addr=:6379,password=macaron,db=0,pool_size=100,idle_timeout=180
  464. ; mysql: go-sql-driver/mysql dsn config string, e.g. `root:password@/session_table`
  465. PROVIDER_CONFIG = data/sessions
  466. ; Session cookie name
  467. COOKIE_NAME = i_like_gitea
  468. ; If you use session in https only, default is false
  469. COOKIE_SECURE = false
  470. ; Enable set cookie, default is true
  471. ENABLE_SET_COOKIE = true
  472. ; Session GC time interval in seconds, default is 86400 (1 day)
  473. GC_INTERVAL_TIME = 86400
  474. ; Session life time in seconds, default is 86400 (1 day)
  475. SESSION_LIFE_TIME = 86400
  476. [picture]
  477. AVATAR_UPLOAD_PATH = data/avatars
  478. REPOSITORY_AVATAR_UPLOAD_PATH = data/repo-avatars
  479. ; How Gitea deals with missing repository avatars
  480. ; none = no avatar will be displayed; random = random avatar will be displayed; image = default image will be used
  481. REPOSITORY_AVATAR_FALLBACK = none
  482. REPOSITORY_AVATAR_FALLBACK_IMAGE = /img/repo_default.png
  483. ; Max Width and Height of uploaded avatars.
  484. ; This is to limit the amount of RAM used when resizing the image.
  485. AVATAR_MAX_WIDTH = 4096
  486. AVATAR_MAX_HEIGHT = 3072
  487. ; Maximum alloved file size for uploaded avatars.
  488. ; This is to limit the amount of RAM used when resizing the image.
  489. AVATAR_MAX_FILE_SIZE = 1048576
  490. ; Chinese users can choose "duoshuo"
  491. ; or a custom avatar source, like: http://cn.gravatar.com/avatar/
  492. GRAVATAR_SOURCE = gravatar
  493. ; This value will always be true in offline mode.
  494. DISABLE_GRAVATAR = false
  495. ; Federated avatar lookup uses DNS to discover avatar associated
  496. ; with emails, see https://www.libravatar.org
  497. ; This value will always be false in offline mode or when Gravatar is disabled.
  498. ENABLE_FEDERATED_AVATAR = false
  499. [attachment]
  500. ; Whether attachments are enabled. Defaults to `true`
  501. ENABLED = true
  502. ; Path for attachments. Defaults to `data/attachments`
  503. PATH = data/attachments
  504. ; One or more allowed types, e.g. image/jpeg|image/png
  505. ALLOWED_TYPES = image/jpeg|image/png|application/zip|application/gzip
  506. ; Max size of each file. Defaults to 4MB
  507. MAX_SIZE = 4
  508. ; Max number of files per upload. Defaults to 5
  509. MAX_FILES = 5
  510. [time]
  511. ; Specifies the format for fully outputted dates. Defaults to RFC1123
  512. ; Special supported values are ANSIC, UnixDate, RubyDate, RFC822, RFC822Z, RFC850, RFC1123, RFC1123Z, RFC3339, RFC3339Nano, Kitchen, Stamp, StampMilli, StampMicro and StampNano
  513. ; For more information about the format see http://golang.org/pkg/time/#pkg-constants
  514. FORMAT =
  515. [log]
  516. ROOT_PATH =
  517. ; Either "console", "file", "conn", "smtp" or "database", default is "console"
  518. ; Use comma to separate multiple modes, e.g. "console, file"
  519. MODE = console
  520. ; Buffer length of the channel, keep it as it is if you don't know what it is.
  521. BUFFER_LEN = 10000
  522. REDIRECT_MACARON_LOG = false
  523. MACARON = file
  524. ; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Info"
  525. ROUTER_LOG_LEVEL = Info
  526. ROUTER = console
  527. ENABLE_ACCESS_LOG = false
  528. 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}}"
  529. ACCESS = file
  530. ; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "Trace"
  531. LEVEL = Info
  532. ; Either "Trace", "Debug", "Info", "Warn", "Error", "Critical", default is "None"
  533. STACKTRACE_LEVEL = None
  534. ; Generic log modes
  535. [log.x]
  536. FLAGS = stdflags
  537. EXPRESSION =
  538. PREFIX =
  539. COLORIZE = false
  540. ; For "console" mode only
  541. [log.console]
  542. LEVEL =
  543. STDERR = false
  544. ; For "file" mode only
  545. [log.file]
  546. LEVEL =
  547. ; Set the file_name for the logger. If this is a relative path this
  548. ; will be relative to ROOT_PATH
  549. FILE_NAME =
  550. ; This enables automated log rotate(switch of following options), default is true
  551. LOG_ROTATE = true
  552. ; Max number of lines in a single file, default is 1000000
  553. MAX_LINES = 1000000
  554. ; Max size shift of a single file, default is 28 means 1 << 28, 256MB
  555. MAX_SIZE_SHIFT = 28
  556. ; Segment log daily, default is true
  557. DAILY_ROTATE = true
  558. ; delete the log file after n days, default is 7
  559. MAX_DAYS = 7
  560. ; compress logs with gzip
  561. COMPRESS = true
  562. ; compression level see godoc for compress/gzip
  563. COMPRESSION_LEVEL = -1
  564. ; For "conn" mode only
  565. [log.conn]
  566. LEVEL =
  567. ; Reconnect host for every single message, default is false
  568. RECONNECT_ON_MSG = false
  569. ; Try to reconnect when connection is lost, default is false
  570. RECONNECT = false
  571. ; Either "tcp", "unix" or "udp", default is "tcp"
  572. PROTOCOL = tcp
  573. ; Host address
  574. ADDR =
  575. ; For "smtp" mode only
  576. [log.smtp]
  577. LEVEL =
  578. ; Name displayed in mail title, default is "Diagnostic message from server"
  579. SUBJECT = Diagnostic message from server
  580. ; Mail server
  581. HOST =
  582. ; Mailer user name and password
  583. USER =
  584. ; Use PASSWD = `your password` for quoting if you use special characters in the password.
  585. PASSWD =
  586. ; Receivers, can be one or more, e.g. 1@example.com,2@example.com
  587. RECEIVERS =
  588. [cron]
  589. ; Enable running cron tasks periodically.
  590. ENABLED = true
  591. ; Run cron tasks when Gitea starts.
  592. RUN_AT_START = false
  593. ; Update mirrors
  594. [cron.update_mirrors]
  595. SCHEDULE = @every 10m
  596. ; Repository health check
  597. [cron.repo_health_check]
  598. SCHEDULE = @every 24h
  599. TIMEOUT = 60s
  600. ; Arguments for command 'git fsck', e.g. "--unreachable --tags"
  601. ; see more on http://git-scm.com/docs/git-fsck
  602. ARGS =
  603. ; Check repository statistics
  604. [cron.check_repo_stats]
  605. RUN_AT_START = true
  606. SCHEDULE = @every 24h
  607. ; Clean up old repository archives
  608. [cron.archive_cleanup]
  609. ; Whether to enable the job
  610. ENABLED = true
  611. ; Whether to always run at least once at start up time (if ENABLED)
  612. RUN_AT_START = true
  613. ; Time interval for job to run
  614. SCHEDULE = @every 24h
  615. ; Archives created more than OLDER_THAN ago are subject to deletion
  616. OLDER_THAN = 24h
  617. ; Synchronize external user data (only LDAP user synchronization is supported)
  618. [cron.sync_external_users]
  619. ; Synchronize external user data when starting server (default false)
  620. RUN_AT_START = false
  621. ; Interval as a duration between each synchronization (default every 24h)
  622. SCHEDULE = @every 24h
  623. ; Create new users, update existing user data and disable users that are not in external source anymore (default)
  624. ; or only create new users if UPDATE_EXISTING is set to false
  625. UPDATE_EXISTING = true
  626. [git]
  627. ; Disables highlight of added and removed changes
  628. DISABLE_DIFF_HIGHLIGHT = false
  629. ; Max number of lines allowed in a single file in diff view
  630. MAX_GIT_DIFF_LINES = 1000
  631. ; Max number of allowed characters in a line in diff view
  632. MAX_GIT_DIFF_LINE_CHARACTERS = 5000
  633. ; Max number of files shown in diff view
  634. MAX_GIT_DIFF_FILES = 100
  635. ; Arguments for command 'git gc', e.g. "--aggressive --auto"
  636. ; see more on http://git-scm.com/docs/git-gc/
  637. GC_ARGS =
  638. ; If use git wire protocol version 2 when git version >= 2.18, default is true, set to false when you always want git wire protocol version 1
  639. EnableAutoGitWireProtocol = true
  640. ; Operation timeout in seconds
  641. [git.timeout]
  642. DEFAULT = 360
  643. MIGRATE = 600
  644. MIRROR = 300
  645. CLONE = 300
  646. PULL = 300
  647. GC = 60
  648. [mirror]
  649. ; Default interval as a duration between each check
  650. DEFAULT_INTERVAL = 8h
  651. ; Min interval as a duration must be > 1m
  652. MIN_INTERVAL = 10m
  653. [api]
  654. ; Enables Swagger. True or false; default is true.
  655. ENABLE_SWAGGER = true
  656. ; Max number of items in a page
  657. MAX_RESPONSE_ITEMS = 50
  658. ; Default paging number of api
  659. DEFAULT_PAGING_NUM = 30
  660. ; Default and maximum number of items per page for git trees api
  661. DEFAULT_GIT_TREES_PER_PAGE = 1000
  662. ; Default size of a blob returned by the blobs API (default is 10MiB)
  663. DEFAULT_MAX_BLOB_SIZE = 10485760
  664. [oauth2]
  665. ; Enables OAuth2 provider
  666. ENABLE = true
  667. ; Lifetime of an OAuth2 access token in seconds
  668. ACCESS_TOKEN_EXPIRATION_TIME=3600
  669. ; Lifetime of an OAuth2 access token in hours
  670. REFRESH_TOKEN_EXPIRATION_TIME=730
  671. ; Check if refresh token got already used
  672. INVALIDATE_REFRESH_TOKENS=false
  673. ; OAuth2 authentication secret for access and refresh tokens, change this a unique string.
  674. JWT_SECRET=Bk0yK7Y9g_p56v86KaHqjSbxvNvu3SbKoOdOt2ZcXvU
  675. [i18n]
  676. 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
  677. NAMES = English,简体中文,繁體中文(香港),繁體中文(台灣),Deutsch,français,Nederlands,latviešu,русский,Українська,日本語,español,português do Brasil,polski,български,italiano,suomi,Türkçe,čeština,српски,svenska,한국어
  678. ; Used for datetimepicker
  679. [i18n.datelang]
  680. en-US = en
  681. zh-CN = zh
  682. zh-HK = zh-HK
  683. zh-TW = zh-TW
  684. de-DE = de
  685. fr-FR = fr
  686. nl-NL = nl
  687. lv-LV = lv
  688. ru-RU = ru
  689. uk-UA = uk
  690. ja-JP = ja
  691. es-ES = es
  692. pt-BR = pt-BR
  693. pl-PL = pl
  694. bg-BG = bg
  695. it-IT = it
  696. fi-FI = fi
  697. tr-TR = tr
  698. cs-CZ = cs-CZ
  699. sr-SP = sr
  700. sv-SE = sv
  701. ko-KR = ko
  702. [U2F]
  703. ; NOTE: THE DEFAULT VALUES HERE WILL NEED TO BE CHANGED
  704. ; Two Factor authentication with security keys
  705. ; https://developers.yubico.com/U2F/App_ID.html
  706. ;APP_ID = http://localhost:3000/
  707. ; Comma seperated list of trusted facets
  708. ;TRUSTED_FACETS = http://localhost:3000/
  709. ; Extension mapping to highlight class
  710. ; e.g. .toml=ini
  711. [highlight.mapping]
  712. [other]
  713. SHOW_FOOTER_BRANDING = false
  714. ; Show version information about Gitea and Go in the footer
  715. SHOW_FOOTER_VERSION = true
  716. ; Show template execution time in the footer
  717. SHOW_FOOTER_TEMPLATE_LOAD_TIME = true
  718. [markup.asciidoc]
  719. ENABLED = false
  720. ; List of file extensions that should be rendered by an external command
  721. FILE_EXTENSIONS = .adoc,.asciidoc
  722. ; External command to render all matching extensions
  723. RENDER_COMMAND = "asciidoc --out-file=- -"
  724. ; Don't pass the file on STDIN, pass the filename as argument instead.
  725. IS_INPUT_FILE = false
  726. [metrics]
  727. ; Enables metrics endpoint. True or false; default is false.
  728. ENABLED = false
  729. ; If you want to add authorization, specify a token here
  730. TOKEN =