mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2025-08-29 15:06:26 +02:00
Removed server_ for better overview
This commit is contained in:
126
roles/docker-gitea/README.md
Normal file
126
roles/docker-gitea/README.md
Normal file
@@ -0,0 +1,126 @@
|
||||
# role server_docker-gitea
|
||||
|
||||
## update
|
||||
```bash
|
||||
cd {{path_docker_compose_folder}}
|
||||
docker-compose down
|
||||
docker-compose pull
|
||||
docker-compose up -d
|
||||
```
|
||||
Keep in mind to track and to don't interrupt the update process until the migration is done.
|
||||
|
||||
## set variables
|
||||
```bash
|
||||
COMPOSE_HTTP_TIMEOUT=600
|
||||
DOCKER_CLIENT_TIMEOUT=600
|
||||
GITEA_APPLICATION_DOCKER_CONTAINER=gitea_application_1
|
||||
GITEA_DATABASE_DOCKER_CONTAINER=gitea_database_1
|
||||
```
|
||||
|
||||
## recreate
|
||||
```bash
|
||||
cd {{path_docker_compose_folder}} && docker-compose -p gitea up -d --force-recreate
|
||||
```
|
||||
|
||||
## database access
|
||||
To access the database execute
|
||||
```bash
|
||||
docker exec -it $GITEA_DATABASE_DOCKER_CONTAINER /bin/mysql -u gitea -p
|
||||
```
|
||||
## bash in application
|
||||
docker exec -it $GITEA_APPLICATION_DOCKER_CONTAINER /bin/sh
|
||||
|
||||
## update app.ini
|
||||
```bash
|
||||
cat > app.ini << EOF
|
||||
APP_NAME = test @test
|
||||
RUN_MODE = prod
|
||||
RUN_USER = git
|
||||
|
||||
[repository]
|
||||
ROOT = /data/git/repositories
|
||||
|
||||
[repository.local]
|
||||
LOCAL_COPY_PATH = /data/gitea/tmp/local-repo
|
||||
|
||||
[repository.upload]
|
||||
TEMP_PATH = /data/gitea/uploads
|
||||
|
||||
[server]
|
||||
APP_DATA_PATH = /data/gitea
|
||||
DOMAIN = test.test
|
||||
SSH_DOMAIN = test.test
|
||||
HTTP_PORT = 3000
|
||||
ROOT_URL = https://test.test/
|
||||
DISABLE_SSH = false
|
||||
SSH_PORT = 2201
|
||||
SSH_LISTEN_PORT = 22
|
||||
LFS_START_SERVER = true
|
||||
LFS_CONTENT_PATH = /data/git/lfs
|
||||
LFS_JWT_SECRET = testsecret
|
||||
OFFLINE_MODE = false
|
||||
|
||||
[database]
|
||||
PATH = /data/gitea/gitea.db
|
||||
DB_TYPE = mysql
|
||||
HOST = database:3306
|
||||
NAME = gitea
|
||||
USER = gitea
|
||||
PASSWD = testpasswort
|
||||
LOG_SQL = false
|
||||
SCHEMA =
|
||||
SSL_MODE = disable
|
||||
CHARSET = utf8mb4
|
||||
|
||||
[indexer]
|
||||
ISSUE_INDEXER_PATH = /data/gitea/indexers/issues.bleve
|
||||
|
||||
[session]
|
||||
PROVIDER_CONFIG = /data/gitea/sessions
|
||||
PROVIDER = file
|
||||
|
||||
[picture]
|
||||
AVATAR_UPLOAD_PATH = /data/gitea/avatars
|
||||
REPOSITORY_AVATAR_UPLOAD_PATH = /data/gitea/repo-avatars
|
||||
DISABLE_GRAVATAR = false
|
||||
ENABLE_FEDERATED_AVATAR = true
|
||||
|
||||
[attachment]
|
||||
PATH = /data/gitea/attachments
|
||||
|
||||
[log]
|
||||
MODE = console
|
||||
LEVEL = info
|
||||
REDIRECT_MACARON_LOG = true
|
||||
MACARON = console
|
||||
ROUTER = console
|
||||
ROOT_PATH = /data/gitea/log
|
||||
|
||||
[security]
|
||||
INSTALL_LOCK = true
|
||||
SECRET_KEY = test_secret_key
|
||||
INTERNAL_TOKEN = test_secret_internal_token
|
||||
|
||||
[service]
|
||||
DISABLE_REGISTRATION = true
|
||||
REQUIRE_SIGNIN_VIEW = false
|
||||
REGISTER_EMAIL_CONFIRM = false
|
||||
ENABLE_NOTIFY_MAIL = false
|
||||
ALLOW_ONLY_EXTERNAL_REGISTRATION = false
|
||||
ENABLE_CAPTCHA = false
|
||||
DEFAULT_KEEP_EMAIL_PRIVATE = false
|
||||
DEFAULT_ALLOW_CREATE_ORGANIZATION = true
|
||||
DEFAULT_ENABLE_TIMETRACKING = true
|
||||
NO_REPLY_ADDRESS = noreply.test.test
|
||||
|
||||
[oauth2]
|
||||
JWT_SECRET = test_secret
|
||||
|
||||
[mailer]
|
||||
ENABLED = false
|
||||
|
||||
[openid]
|
||||
ENABLE_OPENID_SIGNIN = true
|
||||
ENABLE_OPENID_SIGNUP = true
|
||||
EOF
|
||||
```
|
8
roles/docker-gitea/handlers/main.yml
Normal file
8
roles/docker-gitea/handlers/main.yml
Normal file
@@ -0,0 +1,8 @@
|
||||
---
|
||||
- name: recreate gitea
|
||||
command:
|
||||
cmd: docker-compose -p gitea up -d --force-recreate
|
||||
chdir: "{{path_docker_compose_folder}}"
|
||||
environment:
|
||||
COMPOSE_HTTP_TIMEOUT: 600
|
||||
DOCKER_CLIENT_TIMEOUT: 600
|
2
roles/docker-gitea/meta/main.yml
Normal file
2
roles/docker-gitea/meta/main.yml
Normal file
@@ -0,0 +1,2 @@
|
||||
dependencies:
|
||||
- server_native-docker-reverse-proxy
|
17
roles/docker-gitea/tasks/main.yml
Normal file
17
roles/docker-gitea/tasks/main.yml
Normal file
@@ -0,0 +1,17 @@
|
||||
---
|
||||
- name: recieve {{domain}} certificate
|
||||
command: certbot certonly --agree-tos --email {{administrator_email}} --non-interactive --webroot -w /var/lib/letsencrypt/ -d {{domain}}
|
||||
|
||||
- name: configure {{domain}} https
|
||||
template: src=roles/server_native-docker-reverse-proxy/templates/domain.conf.j2 dest=/etc/nginx/conf.d/{{domain}}.conf
|
||||
notify: restart nginx
|
||||
|
||||
- name: "create {{path_docker_compose_folder}}"
|
||||
file:
|
||||
path: "{{path_docker_compose_folder}}"
|
||||
state: directory
|
||||
mode: 0755
|
||||
|
||||
- name: add docker-compose.yml
|
||||
template: src=docker-compose.yml.j2 dest={{path_docker_compose_folder}}docker-compose.yml
|
||||
notify: recreate gitea
|
57
roles/docker-gitea/templates/docker-compose.yml.j2
Normal file
57
roles/docker-gitea/templates/docker-compose.yml.j2
Normal file
@@ -0,0 +1,57 @@
|
||||
version: '3'
|
||||
|
||||
services:
|
||||
application:
|
||||
logging:
|
||||
driver: journald
|
||||
restart: always
|
||||
image: gitea/gitea:latest
|
||||
environment:
|
||||
- USER_UID=1000
|
||||
- USER_GID=1000
|
||||
- DB_TYPE=mysql
|
||||
- DB_HOST=database:3306
|
||||
- DB_NAME=gitea
|
||||
- DB_USER=gitea
|
||||
- DB_PASSWD={{gitea_database_password}}
|
||||
- SSH_PORT={{ssh_port}}
|
||||
- SSH_LISTEN_PORT=22
|
||||
- DOMAIN={{domain}}
|
||||
- SSH_DOMAIN={{domain}}
|
||||
- RUN_MODE="{{run_mode}}"
|
||||
- ROOT_URL="https://{{domain}}/"
|
||||
ports:
|
||||
- "127.0.0.1:{{http_port}}:3000"
|
||||
- "{{ssh_port}}:22"
|
||||
links:
|
||||
- database
|
||||
volumes:
|
||||
- data:/data
|
||||
- /etc/timezone:/etc/timezone:ro
|
||||
- /etc/localtime:/etc/localtime:ro
|
||||
depends_on:
|
||||
- database
|
||||
database:
|
||||
logging:
|
||||
driver: journald
|
||||
image: mariadb
|
||||
restart: always
|
||||
environment:
|
||||
MYSQL_DATABASE: "gitea"
|
||||
MYSQL_USER: "gitea"
|
||||
MYSQL_PASSWORD: "{{gitea_database_password}}"
|
||||
MYSQL_ROOT_PASSWORD: "{{gitea_database_password}}"
|
||||
MARIADB_AUTO_UPGRADE: "1"
|
||||
volumes:
|
||||
- database:/var/lib/mysql
|
||||
healthcheck:
|
||||
test: "/usr/bin/mariadb --user=gitea --password={{gitea_database_password}} --execute \"SHOW DATABASES;\""
|
||||
interval: 3s
|
||||
timeout: 1s
|
||||
retries: 5
|
||||
volumes:
|
||||
database:
|
||||
data:
|
||||
networks:
|
||||
default:
|
||||
driver: bridge
|
1
roles/docker-gitea/vars/main.yml
Normal file
1
roles/docker-gitea/vars/main.yml
Normal file
@@ -0,0 +1 @@
|
||||
path_docker_compose_folder: "{{path_docker_compose_files}}gitea/"
|
Reference in New Issue
Block a user