Initial commit
This commit is contained in:
		
						commit
						3c90e57ed0
					
				
							
								
								
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								.gitignore
									
									
									
									
										vendored
									
									
										Normal file
									
								
							| @ -0,0 +1 @@ | ||||
| .env | ||||
							
								
								
									
										19
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								README.md
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,19 @@ | ||||
| # Gitea | ||||
| 
 | ||||
| ## Overview | ||||
| Gitea is a lightweight, self-hosted Git service written in Go. It's designed to be the easiest, fastest, and most painless way to set up a self-hosted Git service. | ||||
| 
 | ||||
| ## Features | ||||
| - Easy installation | ||||
| - Cross-platform support | ||||
| - Lightweight (<100MB RAM) | ||||
| - Git-powered repositories | ||||
| - User dashboard, activity timeline | ||||
| - Repository file editor | ||||
| - Branch management | ||||
| - Issue tracking and pull requests | ||||
| - Organization and team management | ||||
| - Webhook support | ||||
| - API support | ||||
| - Two-factor authentication | ||||
| - Email notifications | ||||
							
								
								
									
										98
									
								
								docker-compose.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										98
									
								
								docker-compose.yaml
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,98 @@ | ||||
| volumes: | ||||
|   traefik: { driver: local } | ||||
| 
 | ||||
| services: | ||||
|   traefik: | ||||
|     image: docker.io/traefik:${TRAEFIK_RELEASE:-v2.9.8} | ||||
|     restart: always | ||||
|     command: | ||||
|       - --api.insecure=false | ||||
|       - --providers.docker=true | ||||
|       - --providers.docker.exposedbydefault=false | ||||
|       - --entrypoints.web.address=:80 | ||||
|       - --entrypoints.web.http.redirections.entryPoint.to=websecure | ||||
|       - --entrypoints.web.http.redirections.entryPoint.scheme=https | ||||
|       - --entrypoints.websecure.address=:443 | ||||
|       - --certificatesresolvers.le.acme.tlschallenge=true | ||||
|       - --certificatesresolvers.le.acme.email=${LETSENCRYPT_EMAIL?need email for cert expiry notifications} | ||||
|       - --certificatesresolvers.le.acme.storage=/letsencrypt/acme.json | ||||
|     ports: | ||||
|       - 80:80 | ||||
|       - 443:443 | ||||
|     volumes: | ||||
|       - traefik:/letsencrypt:rw | ||||
|       - /run/docker.sock:/var/run/docker.sock:ro | ||||
|     networks: | ||||
|       - default | ||||
| 
 | ||||
|   gitea: | ||||
|     image: gitea/gitea:1.22.3-rootless | ||||
|     environment: | ||||
|       # Database | ||||
|       - GITEA__database__DB_TYPE=mysql | ||||
|       - GITEA__database__HOST=db:3306 | ||||
|       - GITEA__database__NAME=${GITEA__database__NAME} | ||||
|       - GITEA__database__USER=${GITEA__database__USER} | ||||
|       - GITEA__database__PASSWD=${GITEA__database__PASSWD} | ||||
|       # Mailer | ||||
|       - GITEA__mailer__ENABLED=true | ||||
|       - GITEA__mailer__FROM=${GITEA__mailer__FROM:?GITEA__mailer__FROM not set} | ||||
|       - GITEA__mailer__SMTP_ADDR=${GITEA__mailer__SMTP_ADDR:?GITEA__mailer__SMTP_ADDR not set} | ||||
|       - GITEA__mailer__USER=${GITEA__mailer__USER:-apikey} | ||||
|       - GITEA__mailer__PASSWD=${GITEA__mailer__PASSWD:?GITEA__mailer__PASSWD not set} | ||||
|       - GITEA__mailer__SMTP_PORT=${GITEA__mailer__SMTP_PORT:?GITEA__mailer__SMTP_PORT not set} | ||||
|       - GITEA__mailer__PROTOCOL=${GITEA__mailer__PROTOCOL:?GITEA__mailer__PROTOCOL not set} | ||||
|       # Service | ||||
|       - GITEA__service__REGISTER_EMAIL_CONFIRM=true | ||||
|       - GITEA__service__ENABLE_CAPTCHA=true | ||||
|       - GITEA__service__REQUIRE_CAPTCHA_FOR_LOGIN=true | ||||
|       - GITEA__service__KEEP_EMAIL_PRIVATE=true | ||||
|       - GITEA__service__DEFAULT_ALLOW_CREATE_ORGANIZATION=false | ||||
|       # Repository | ||||
|       - GITEA__repository__DEFAULT_PRIVATE=true | ||||
|       - GITEA__repository__MAX_CREATION_LIMIT=0 | ||||
|       - GITEA__repository__DISABLE_MIGRATIONS=false | ||||
|       # Default | ||||
|       # Fails due to special character - override in app.ini | ||||
|       # - GITEA__APP_NAME="moeny: git moeny with a cup of gitea" | ||||
|       - GITEA__RUN_MODE=prod | ||||
|       # Security | ||||
|       - GITEA__security__INSTALL_LOCK=true | ||||
|       - GITEA__security__MIN_PASSWORD_LENGTH=8 | ||||
|     restart: always | ||||
|     volumes: | ||||
|       - ./data:/var/lib/gitea | ||||
|       - ./config:/etc/gitea | ||||
|       - /etc/timezone:/etc/timezone:ro | ||||
|       - /etc/localtime:/etc/localtime:ro | ||||
|     ports: | ||||
|       - "3000:3000" | ||||
|       - "2222:2222" | ||||
|     depends_on: | ||||
|       - db | ||||
|     labels: | ||||
|       - "traefik.enable=true" | ||||
|       - "traefik.http.routers.gitea.rule=Host(`${DOMAIN:?DOMAIN not set}`)" | ||||
|       - "traefik.http.routers.gitea.entrypoints=websecure" | ||||
|       - "traefik.http.routers.gitea.tls=true" | ||||
|       - "traefik.http.routers.gitea.tls.certresolver=le" | ||||
|       - "traefik.http.services.gitea.loadbalancer.server.port=3000" | ||||
|     networks: | ||||
|       - default | ||||
| 
 | ||||
|   db: | ||||
|     image: mysql:8 | ||||
|     restart: always | ||||
|     environment: | ||||
|       - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD} | ||||
|       - MYSQL_USER=${MYSQL_USER} | ||||
|       - MYSQL_PASSWORD=${MYSQL_PASSWORD} | ||||
|       - MYSQL_DATABASE=${MYSQL_DATABASE} | ||||
|     volumes: | ||||
|       - ./mysql:/var/lib/mysql | ||||
|     networks: | ||||
|       - default | ||||
| 
 | ||||
| networks: | ||||
|   default: | ||||
|     name: gitea_default | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user