chore: publish 0.1.0+0.1.0 release
This commit is contained in:
parent
e4c18a4826
commit
9ec5ed1d3f
|
@ -19,9 +19,8 @@ EMAIL_BACKEND=console
|
||||||
#SMTP_PASSWORD=
|
#SMTP_PASSWORD=
|
||||||
#SMTP_HOST=
|
#SMTP_HOST=
|
||||||
#SMTP_USE_SLL=
|
#SMTP_USE_SLL=
|
||||||
#SMTP_USE_TLS=TRUE
|
#SMTP_USE_TLS=true
|
||||||
#SMTP_PORT=587
|
#SMTP_PORT=587
|
||||||
|
|
||||||
SECRET_DB_PASSWORD_VERSION=v1
|
|
||||||
SITE_URL=https://${DOMAIN}
|
SITE_URL=https://${DOMAIN}
|
||||||
LETS_ENCRYPT_ENV=production
|
LETS_ENCRYPT_ENV=production
|
||||||
|
|
16
README.md
16
README.md
|
@ -1,15 +1,15 @@
|
||||||
# karrot
|
# karrot
|
||||||
|
|
||||||
Easily and securely send things from one computer to another
|
Karrot is a free and open-source tool for grassroots initiatives and groups of people that want to coordinate face-to-face activities on a local, autonomous and voluntary basis.
|
||||||
|
|
||||||
<!-- metadata -->
|
<!-- metadata -->
|
||||||
|
|
||||||
* **Category**: Utilities
|
* **Category**: Utilities
|
||||||
* **Status**: 3, stable
|
* **Status**: 3, stable
|
||||||
* **Image**: [`karrot-backend`](),3, own
|
* **Image**: [`karrot-backend`](https://hub.docker.com/r/vlafvlaf/karrot_backend),4,upstream
|
||||||
* **Healthcheck**: No
|
* **Healthcheck**: Yes
|
||||||
* **Backups**: No
|
* **Backups**: No
|
||||||
* **Email**: No
|
* **Email**: Yes
|
||||||
* **Tests**: No
|
* **Tests**: No
|
||||||
* **SSO**: No
|
* **SSO**: No
|
||||||
|
|
||||||
|
@ -20,14 +20,10 @@ Easily and securely send things from one computer to another
|
||||||
1. Set up Docker Swarm and [`abra`]
|
1. Set up Docker Swarm and [`abra`]
|
||||||
2. `abra app new karrot`
|
2. `abra app new karrot`
|
||||||
3. `abra app config <karrot app name>`
|
3. `abra app config <karrot app name>`
|
||||||
3. `abra app secret generate -a <karrot app name>`
|
|
||||||
4. `abra app deploy <karrot app name>`
|
4. `abra app deploy <karrot app name>`
|
||||||
|
|
||||||
when deploying for the first time, the `web` service will end up in a weird state and the site will display `internal server error`. To fix this run
|
## Configuration options
|
||||||
`abra app restart <karrot app name> web`
|
|
||||||
this only needs to be done after first deploy
|
|
||||||
|
|
||||||
also, mail isn't working for now, leave it at `console`!
|
|
||||||
|
|
||||||
|
`MAXMIND_ACCOUNT_ID` and `MAXMIND_ACCOUNT_KEY` are API credentials from maxmind.com. You need an account there to get GeoIP data for Karrot.
|
||||||
|
|
||||||
[`abra`]: https://git.coopcloud.tech/coop-cloud/abra
|
[`abra`]: https://git.coopcloud.tech/coop-cloud/abra
|
||||||
|
|
|
@ -1,13 +0,0 @@
|
||||||
FROM python:3.7-buster
|
|
||||||
|
|
||||||
WORKDIR /app
|
|
||||||
|
|
||||||
RUN apt-get update && \
|
|
||||||
apt-get install -y gdal-bin
|
|
||||||
|
|
||||||
COPY ./karrot-backend.pyz /app/karrot-backend.pyz
|
|
||||||
|
|
||||||
RUN sed -i -e's/ main/ main contrib non-free/g' /etc/apt/sources.list && \
|
|
||||||
apt-get update && \
|
|
||||||
apt-get install -y libmaxminddb0 libmaxminddb-dev geoipupdate
|
|
||||||
|
|
Binary file not shown.
Binary file not shown.
18
compose.yml
18
compose.yml
|
@ -2,7 +2,7 @@ version: "3.8"
|
||||||
|
|
||||||
services:
|
services:
|
||||||
web:
|
web:
|
||||||
image: "vlafvlaf/karrot_frontend:0.0.3"
|
image: "vlafvlaf/karrot_frontend:0.1.0"
|
||||||
configs:
|
configs:
|
||||||
- source: nginx_config
|
- source: nginx_config
|
||||||
target: /etc/nginx/conf.d/default.conf
|
target: /etc/nginx/conf.d/default.conf
|
||||||
|
@ -31,10 +31,9 @@ services:
|
||||||
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`${EXTRA_DOMAINS})"
|
- "traefik.http.routers.${STACK_NAME}.rule=Host(`${DOMAIN}`${EXTRA_DOMAINS})"
|
||||||
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
|
- "traefik.http.routers.${STACK_NAME}.entrypoints=web-secure"
|
||||||
- "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}"
|
- "traefik.http.routers.${STACK_NAME}.tls.certresolver=${LETS_ENCRYPT_ENV}"
|
||||||
- "coop-cloud.${STACK_NAME}.version=0.0.1+testing"
|
|
||||||
|
|
||||||
app:
|
app:
|
||||||
image: "vlafvlaf/karrot_backend:test"
|
image: "vlafvlaf/karrot_backend:0.1.0"
|
||||||
networks:
|
networks:
|
||||||
- internal
|
- internal
|
||||||
depends_on:
|
depends_on:
|
||||||
|
@ -75,6 +74,9 @@ services:
|
||||||
timeout: 3s
|
timeout: 3s
|
||||||
retries: 2
|
retries: 2
|
||||||
start_period: 45s
|
start_period: 45s
|
||||||
|
deploy:
|
||||||
|
labels:
|
||||||
|
- "coop-cloud.${STACK_NAME}.version=0.1.0+0.1.0"
|
||||||
command: >
|
command: >
|
||||||
sh -c "
|
sh -c "
|
||||||
echo 'EditionIDs GeoLite2-City GeoLite2-Country' > /etc/GeoIP.conf &&
|
echo 'EditionIDs GeoLite2-City GeoLite2-Country' > /etc/GeoIP.conf &&
|
||||||
|
@ -87,7 +89,7 @@ services:
|
||||||
python karrot-backend.pyz server
|
python karrot-backend.pyz server
|
||||||
"
|
"
|
||||||
worker:
|
worker:
|
||||||
image: "vlafvlaf/karrot_backend:test"
|
image: "vlafvlaf/karrot_backend:0.1.0"
|
||||||
depends_on:
|
depends_on:
|
||||||
# shiv + geoip data gets loaded on the first run of the app
|
# shiv + geoip data gets loaded on the first run of the app
|
||||||
# so to ensure it's available in the worker too, we need to wait
|
# so to ensure it's available in the worker too, we need to wait
|
||||||
|
@ -149,10 +151,10 @@ services:
|
||||||
- POSTGRES_DB=karrot
|
- POSTGRES_DB=karrot
|
||||||
|
|
||||||
|
|
||||||
secrets:
|
#secrets:
|
||||||
db_password:
|
# db_password:
|
||||||
external: true
|
# external: true
|
||||||
name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION}
|
# name: ${STACK_NAME}_db_password_${SECRET_DB_PASSWORD_VERSION}
|
||||||
|
|
||||||
configs:
|
configs:
|
||||||
nginx_config:
|
nginx_config:
|
||||||
|
|
|
@ -1,4 +0,0 @@
|
||||||
FROM nginx:1.20.1-alpine
|
|
||||||
|
|
||||||
RUN curl https://download.karrot.world/karrot-frontend-production.zip -o karrot-frontend.zip && \
|
|
||||||
unzip -o karrot-frontend.zip -d /usr/share/nginx/html
|
|
Loading…
Reference in New Issue