mirror of
				https://github.com/go-gitea/gitea
				synced 2025-10-30 19:08:37 +00:00 
			
		
		
		
	Add a step for binding IP address for listening on remote database (#12898)
* Add listen address configuration step * Fix numbering order Signed-off-by: Bagas Sanjaya <bagasdotme@gmail.com> Co-authored-by: Lauris BH <lauris@nix.lv>
This commit is contained in:
		| @@ -21,7 +21,12 @@ Note: All steps below requires that the database engine of your choice is instal | ||||
|  | ||||
| ## MySQL | ||||
|  | ||||
| 1.  On database instance, login to database console as root: | ||||
| 1.  For remote database setup, you will need to make MySQL listen to your IP address. Edit `bind-address` option on `/etc/mysql/my.cnf` on database instance to: | ||||
|  | ||||
|     ```ini | ||||
|     bind-address = 203.0.113.3 | ||||
|     ``` | ||||
| 2.  On database instance, login to database console as root: | ||||
|  | ||||
|     ``` | ||||
|     mysql -u root -p | ||||
| @@ -29,7 +34,7 @@ Note: All steps below requires that the database engine of your choice is instal | ||||
|  | ||||
|     Enter the password as prompted. | ||||
|  | ||||
| 2.  Create database user which will be used by Gitea, authenticated by password. This example uses `'gitea'` as password. Please use a secure password for your instance.  | ||||
| 3.  Create database user which will be used by Gitea, authenticated by password. This example uses `'gitea'` as password. Please use a secure password for your instance.  | ||||
|  | ||||
|     For local database: | ||||
|  | ||||
| @@ -49,7 +54,7 @@ Note: All steps below requires that the database engine of your choice is instal | ||||
|  | ||||
|     Replace username and password above as appropriate. | ||||
|  | ||||
| 3.  Create database with UTF-8 charset and collation. Make sure to use `utf8mb4` charset instead of `utf8` as the former supports all Unicode characters (including emojis) beyond *Basic Multilingual Plane*. Also, collation chosen depending on your expected content. When in doubt, use either `unicode_ci` or `general_ci`. | ||||
| 4.  Create database with UTF-8 charset and collation. Make sure to use `utf8mb4` charset instead of `utf8` as the former supports all Unicode characters (including emojis) beyond *Basic Multilingual Plane*. Also, collation chosen depending on your expected content. When in doubt, use either `unicode_ci` or `general_ci`. | ||||
|  | ||||
|     ```sql | ||||
|     CREATE DATABASE giteadb CHARACTER SET 'utf8mb4' COLLATE 'utf8mb4_unicode_ci'; | ||||
| @@ -57,7 +62,7 @@ Note: All steps below requires that the database engine of your choice is instal | ||||
|  | ||||
|     Replace database name as appropriate. | ||||
|  | ||||
| 4.  Grant all privileges on the database to database user created above. | ||||
| 5.  Grant all privileges on the database to database user created above. | ||||
|  | ||||
|     For local database: | ||||
|  | ||||
| @@ -73,9 +78,9 @@ Note: All steps below requires that the database engine of your choice is instal | ||||
|     FLUSH PRIVILEGES; | ||||
|     ``` | ||||
|  | ||||
| 5.  Quit from database console by `exit`. | ||||
| 6.  Quit from database console by `exit`. | ||||
|  | ||||
| 6.  On your Gitea server, test connection to the database: | ||||
| 7.  On your Gitea server, test connection to the database: | ||||
|  | ||||
|     ``` | ||||
|     mysql -u gitea -h 203.0.113.3 -p giteadb | ||||
| @@ -87,7 +92,13 @@ Note: All steps below requires that the database engine of your choice is instal | ||||
|  | ||||
| ## PostgreSQL | ||||
|  | ||||
| 1.  PostgreSQL uses `md5` challenge-response encryption scheme for password authentication by default. Nowadays this scheme is not considered secure anymore. Use SCRAM-SHA-256 scheme instead by editing the `postgresql.conf` configuration file on the database server to: | ||||
| 1.  For remote database setup, configure PostgreSQL on database instance to listen to your IP address by editing `listen_addresses` on `postgresql.conf` to: | ||||
|  | ||||
|     ```ini | ||||
|     listen_addresses = 'localhost, 203.0.113.3' | ||||
|     ``` | ||||
|  | ||||
| 2.  PostgreSQL uses `md5` challenge-response encryption scheme for password authentication by default. Nowadays this scheme is not considered secure anymore. Use SCRAM-SHA-256 scheme instead by editing the `postgresql.conf` configuration file on the database server to: | ||||
|  | ||||
|     ```ini | ||||
|     password_encryption = scram-sha-256 | ||||
| @@ -95,13 +106,13 @@ Note: All steps below requires that the database engine of your choice is instal | ||||
|  | ||||
|     Restart PostgreSQL to apply the setting. | ||||
|  | ||||
| 2.  On the database server, login to the database console as superuser: | ||||
| 3.  On the database server, login to the database console as superuser: | ||||
|  | ||||
|     ``` | ||||
|     su -c "psql" - postgres | ||||
|     ``` | ||||
|  | ||||
| 3.  Create database user (role in PostgreSQL terms) with login privilege and password. Please use a secure, strong password instead of `'gitea'` below: | ||||
| 4.  Create database user (role in PostgreSQL terms) with login privilege and password. Please use a secure, strong password instead of `'gitea'` below: | ||||
|  | ||||
|     ```sql | ||||
|     CREATE ROLE gitea WITH LOGIN PASSWORD 'gitea'; | ||||
| @@ -109,7 +120,7 @@ Note: All steps below requires that the database engine of your choice is instal | ||||
|  | ||||
|     Replace username and password as appropriate. | ||||
|  | ||||
| 4.  Create database with UTF-8 charset and owned by the database user created earlier. Any `libc` collations can be specified with `LC_COLLATE` and `LC_CTYPE` parameter, depending on expected content: | ||||
| 5.  Create database with UTF-8 charset and owned by the database user created earlier. Any `libc` collations can be specified with `LC_COLLATE` and `LC_CTYPE` parameter, depending on expected content: | ||||
|  | ||||
|     ```sql | ||||
|     CREATE DATABASE giteadb WITH OWNER gitea TEMPLATE template0 ENCODING UTF8 LC_COLLATE 'en_US.UTF-8' LC_CTYPE 'en_US.UTF-8'; | ||||
| @@ -117,7 +128,7 @@ Note: All steps below requires that the database engine of your choice is instal | ||||
|  | ||||
|     Replace database name as appropriate. | ||||
|  | ||||
| 5.  Allow the database user to access the database created above by adding the following authentication rule to `pg_hba.conf`. | ||||
| 6.  Allow the database user to access the database created above by adding the following authentication rule to `pg_hba.conf`. | ||||
|  | ||||
|     For local database: | ||||
|  | ||||
| @@ -137,7 +148,7 @@ Note: All steps below requires that the database engine of your choice is instal | ||||
|  | ||||
|     Restart PostgreSQL to apply new authentication rules. | ||||
|      | ||||
| 6.  On your Gitea server, test connection to the database. | ||||
| 7.  On your Gitea server, test connection to the database. | ||||
|  | ||||
|     For local database: | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user