Use cgit as a simple frontend to gitea
This commit is contained in:
parent
be3a571d2c
commit
d290f2f68f
4 changed files with 69 additions and 4 deletions
|
@ -15,7 +15,7 @@ TEMP_PATH = /data/gitea/uploads
|
||||||
APP_DATA_PATH = /data/gitea
|
APP_DATA_PATH = /data/gitea
|
||||||
SSH_DOMAIN = git.theorangeone.net
|
SSH_DOMAIN = git.theorangeone.net
|
||||||
HTTP_PORT = 3000
|
HTTP_PORT = 3000
|
||||||
ROOT_URL = https://git.theorangeone.net/
|
ROOT_URL = https://git.theorangeone.net/gitea/
|
||||||
DISABLE_SSH = false
|
DISABLE_SSH = false
|
||||||
SSH_PORT = 22
|
SSH_PORT = 22
|
||||||
SSH_LISTEN_PORT = 3022
|
SSH_LISTEN_PORT = 3022
|
||||||
|
|
11
ansible/roles/docker/files/gitea/cgitrc
Normal file
11
ansible/roles/docker/files/gitea/cgitrc
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
#
|
||||||
|
# cgit config
|
||||||
|
#
|
||||||
|
|
||||||
|
css=/cgit.css
|
||||||
|
logo=/cgit.png
|
||||||
|
source-filter=/bin/syntax-highlighting.sh
|
||||||
|
virtual-root=/
|
||||||
|
mimetype-file=/etc/mime.types
|
||||||
|
robots=noindex, nofollow
|
||||||
|
include=/config/repos.txt
|
|
@ -10,10 +10,12 @@ services:
|
||||||
- USER_GID={{ docker_user.id }}
|
- USER_GID={{ docker_user.id }}
|
||||||
labels:
|
labels:
|
||||||
- "traefik.enable=true"
|
- "traefik.enable=true"
|
||||||
- "traefik.http.routers.gitea.rule=Host(`git.theorangeone.net`)"
|
- "traefik.http.routers.gitea.rule=Host(`git.theorangeone.net`) && PathPrefix(`/gitea`)"
|
||||||
- "traefik.http.routers.gitea.tls=true"
|
- "traefik.http.routers.gitea.tls=true"
|
||||||
- "traefik.http.routers.gitea.tls.certresolver=le"
|
- "traefik.http.routers.gitea.tls.certresolver=le"
|
||||||
- "traefik.http.services.gitea-gitea.loadbalancer.server.port=3000"
|
- "traefik.http.services.gitea-gitea.loadbalancer.server.port=3000"
|
||||||
|
- "traefik.http.middlewares.gitea-strip.stripprefix.prefixes=/gitea"
|
||||||
|
- "traefik.http.routers.gitea.middlewares=gitea-strip"
|
||||||
ports:
|
ports:
|
||||||
- "{{ wireguard.clients.intersect.ip }}:3022:3022"
|
- "{{ wireguard.clients.intersect.ip }}:3022:3022"
|
||||||
volumes:
|
volumes:
|
||||||
|
@ -30,3 +32,30 @@ services:
|
||||||
environment:
|
environment:
|
||||||
- POSTGRES_PASSWORD=gitea
|
- POSTGRES_PASSWORD=gitea
|
||||||
- POSTGRES_USER=gitea
|
- POSTGRES_USER=gitea
|
||||||
|
|
||||||
|
cgit:
|
||||||
|
image: theorangeone/docker-cgit:latest
|
||||||
|
container_name: cgit
|
||||||
|
restart: unless-stopped
|
||||||
|
environment:
|
||||||
|
- USER_UID={{ docker_user.id }}
|
||||||
|
- USER_GID={{ docker_user.id }}
|
||||||
|
volumes:
|
||||||
|
- ./repos:/data/git:ro
|
||||||
|
- ./cgit/cgitrc:/config/cgitrc:ro
|
||||||
|
- ./cgit/repos.txt:/config/repos.txt:ro
|
||||||
|
labels:
|
||||||
|
- "traefik.enable=true"
|
||||||
|
- "traefik.http.routers.cgit.rule=Host(`git.theorangeone.net`)"
|
||||||
|
- "traefik.http.routers.cgit.tls=true"
|
||||||
|
- "traefik.http.routers.cgit.tls.certresolver=le"
|
||||||
|
|
||||||
|
gitea-cgit-adapter:
|
||||||
|
image: theorangeone/gitea-cgit-adapter:latest
|
||||||
|
restart: unless-stopped
|
||||||
|
command: "/app/gitea-cgit-adapter /etc/gitea.ini /etc/cgit-repos.txt --interval 600"
|
||||||
|
depends_on:
|
||||||
|
- gitea
|
||||||
|
volumes:
|
||||||
|
- ./gitea/gitea/conf/app.ini:/etc/gitea.ini:ro
|
||||||
|
- ./cgit/repos.txt:/etc/cgit-repos.txt
|
||||||
|
|
|
@ -18,6 +18,14 @@
|
||||||
become: true
|
become: true
|
||||||
become_user: root
|
become_user: root
|
||||||
|
|
||||||
|
- name: Create cgit config directory
|
||||||
|
file:
|
||||||
|
path: '/opt/gitea/cgit'
|
||||||
|
state: directory
|
||||||
|
mode: "{{ docker_compose_directory_mask }}"
|
||||||
|
become: true
|
||||||
|
become_user: root
|
||||||
|
|
||||||
- name: Install gitea compose file
|
- name: Install gitea compose file
|
||||||
template:
|
template:
|
||||||
src: files/gitea/docker-compose.yml
|
src: files/gitea/docker-compose.yml
|
||||||
|
@ -35,7 +43,24 @@
|
||||||
dest: "/opt/gitea/gitea/gitea/conf/app.ini"
|
dest: "/opt/gitea/gitea/gitea/conf/app.ini"
|
||||||
mode: "{{ docker_compose_file_mask }}"
|
mode: "{{ docker_compose_file_mask }}"
|
||||||
owner: "{{ docker_user.name }}"
|
owner: "{{ docker_user.name }}"
|
||||||
register: config_file
|
register: gitea_config_file
|
||||||
|
become: true
|
||||||
|
become_user: root
|
||||||
|
|
||||||
|
- name: Install cgit config file
|
||||||
|
template:
|
||||||
|
src: files/gitea/cgitrc
|
||||||
|
dest: "/opt/gitea/cgit/cgitrc"
|
||||||
|
mode: "{{ docker_compose_file_mask }}"
|
||||||
|
owner: "{{ docker_user.name }}"
|
||||||
|
register: cgit_config_file
|
||||||
|
become: true
|
||||||
|
become_user: root
|
||||||
|
|
||||||
|
- name: Touch public repos file
|
||||||
|
file:
|
||||||
|
path: /opt/gitea/cgit/repos.txt
|
||||||
|
state: file
|
||||||
become: true
|
become: true
|
||||||
become_user: root
|
become_user: root
|
||||||
|
|
||||||
|
@ -46,7 +71,7 @@
|
||||||
remove_orphans: true
|
remove_orphans: true
|
||||||
remove_volumes: true
|
remove_volumes: true
|
||||||
state: "{{ item }}"
|
state: "{{ item }}"
|
||||||
when: compose_file.changed or config_file.changed
|
when: compose_file.changed or gitea_config_file.changed or cgit_config_file.changed
|
||||||
loop:
|
loop:
|
||||||
- absent
|
- absent
|
||||||
- present
|
- present
|
||||||
|
|
Loading…
Reference in a new issue