diff --git a/README.md b/README.md index 4a16090..b2784a0 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ ## Basic usage -1. Set up Docker Swarm and [`abra`][abra] +1. [Set up Docker Swarm and `abra`][operators-tutorial] 2. Deploy [`coop-cloud/traefik`][cc-traefik] 3. `abra app new gitea --secrets` (optionally with `--pass` if you'd like to save secrets in `pass`) @@ -23,12 +23,15 @@ your Docker swarm box 5. `abra app deploy YOURAPPDOMAIN` +[operators-tutorial]: https://docs.coopcloud.tech/operators/tutorial/ +[cc-traefik]: https://git.coopcloud.tech/coop-cloud/traefik/ + ## Create first user Run ```bash -abra app run YOURAPPNAME app gitea -c /etc/gitea/app.ini admin user create --username USERNAME --admin --random-password --email EMAIL +abra app run YOURAPPNAME app -- gitea -c /etc/gitea/app.ini admin user create --username USERNAME --admin --random-password --email EMAIL ``` See the [Gitea command-line documentation](https://docs.gitea.io/en-us/command-line/) for more options. Make sure not to forget the `-c /etc/gitea/app.ini`. @@ -36,25 +39,34 @@ See the [Gitea command-line documentation](https://docs.gitea.io/en-us/command-l ## Enable SSH You most certainly want to be able to access your repository over SSH. To do so, make sure you uncomment the right lines in the configuration for `traefik`. -``` + +```sh abra app config YOURTRAEFIKAPP ``` + There uncomment or add these lines: -``` + +```sh GITEA_SSH_ENABLED=1 COMPOSE_FILE="compose.yml:compose.gitea.yml" ``` + Then redeploy traefik: -``` + +```sh abra app undeploy YOURTRAEFIKAPP abra app deploy YOURTRAEFIKAPP ``` + You might need to wait a bit. To check if it worked, you can run -``` + +```sh telnet my.gitea.example.com 2222 ``` + Once you have added a public SSH key, you can check that you can connect to your gitea server with -``` + +```sh ssh -T -p 2222 git@my.gitea.example.com ``` diff --git a/compose.yml b/compose.yml index b5041ed..76fda73 100644 --- a/compose.yml +++ b/compose.yml @@ -84,6 +84,7 @@ services: - "traefik.tcp.services.${STACK_NAME}-ssh.loadbalancer.server.port=${GITEA_SSH_PORT}" - "traefik.http.routers.${STACK_NAME}.middlewares=${STACK_NAME}_cors" - "traefik.http.middlewares.${STACK_NAME}_cors.headers.accesscontrolallowmethods=GET,OPTIONS,PUT" + - "traefik.http.middlewares.${STACK_NAME}_cors.headers.accesscontrolallowheaders=content-type,authorization" - "traefik.http.middlewares.${STACK_NAME}_cors.headers.accesscontrolalloworiginlist=https://${GITEA_CORS_ALLOW_DOMAIN}" - "traefik.http.middlewares.${STACK_NAME}_cors.headers.accesscontrolmaxage=100" - "traefik.http.middlewares.${STACK_NAME}_cors.headers.addvaryheader=true"