|
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 |
- images:
- gitea-latest: .
- certbot-latest: ../certbot
-
- volumes:
- gitea-data: {}
- certbot-webroot: {}
- certbot-config-gitea: {}
-
- jails:
- gitea:
- meta:
- domains:
- - xyz.com
- - www.xyz.com
- image: gitea-latest
- mounts:
- gitea-data: /var/db/gitea
- ip4.addr: 127.0.8.1
- exec.start: |
- export IP4_ADDR=127.0.8.1 && \
- export DOMAIN_NAME=xyz.com && \
- export GITEA_CONF=/usr/local/etc/gitea/conf/app.ini && \
- chown git:git /var/db/gitea && \
- sed -i -e "s/127.0.0.1/${IP4_ADDR}/g" $GITEA_CONF && \
- sed -i -e "s/localhost/${DOMAIN_NAME}/g" $GITEA_CONF && \
- crudini --set --inplace $GITEA_CONF server ROOT_URL https://${DOMAIN_NAME} && \
- crudini --set --inplace $GITEA_CONF server DISABLE_SSH true && \
- crudini --set --inplace $GITEA_CONF service DEFAULT_ALLOW_CREATE_ORGANIZATION false && \
- crudini --set --inplace $GITEA_CONF service DEFAULT_KEEP_EMAIL_PRIVATE true && \
- crudini --set --inplace $GITEA_CONF repository MAX_CREATION_LIMIT 0 && \
- crudini --set --inplace $GITEA_CONF server LANDING_PAGE explore && \
- crudini --set --inplace $GITEA_CONF service DISABLE_REGISTRATION false && \
- crudini --set --inplace $GITEA_CONF repository DEFAULT_REPO_UNITS repo.code && \
- export SECRET_CONF=/var/db/gitea/focker-secrets.ini && \
- if [ ! -f $SECRET_CONF ]; then
- touch $SECRET_CONF && \
- chown root:git $SECRET_CONF && \
- chmod 640 $SECRET_CONF && \
- crudini --set --inplace $SECRET_CONF oauth2 JWT_SECRET `gitea generate secret JWT_SECRET` && \
- crudini --set --inplace $SECRET_CONF security INTERNAL_TOKEN `gitea generate secret INTERNAL_TOKEN` && \
- crudini --set --inplace $SECRET_CONF security SECRET_KEY `gitea generate secret SECRET_KEY`; \
- fi && \
- if [ ! -f /var/db/gitea/gitea.db ]; then \
- su git -c 'gitea migrate -c $GITEA_CONF' && \
- su git -c 'gitea admin -c $GITEA_CONF create-user --username admin1 --password "AdminAdmin1+" --email "invaliduser@nonexistentdomain.com" --admin'; \
- fi && \
- crudini --set --inplace $GITEA_CONF oauth2 JWT_SECRET `crudini --get $SECRET_CONF oauth2 JWT_SECRET` && \
- crudini --set --inplace $GITEA_CONF security INTERNAL_TOKEN `crudini --get $SECRET_CONF security INTERNAL_TOKEN` && \
- crudini --set --inplace $GITEA_CONF security SECRET_KEY `crudini --get $SECRET_CONF security SECRET_KEY` && \
- /bin/sh /etc/rc
-
- certbot-gitea:
- image: certbot-latest
- mounts:
- certbot-webroot: /certbot/webroot
- certbot-config-gitea: /usr/local/etc/letsencrypt
- ip4.addr: 127.0.9.1
- exec.start: |
- if [ ! -f /usr/local/etc/letsencrypt/cli.ini ]; then
- echo 'webroot-path=/certbot/webroot' >>/usr/local/etc/letsencrypt/cli.ini && \
- echo 'authenticator=webroot' >>/usr/local/etc/letsencrypt/cli.ini;
- fi && \
- /bin/sh /etc/rc
|