From aca199053efc624a603e0fbbef94fe88f3142fdb Mon Sep 17 00:00:00 2001 From: shibao Date: Thu, 17 Feb 2022 23:41:31 -0500 Subject: [PATCH] fix drone --- .drone.yml | 36 ++++++++++++++++++++++++++++-------- Dockerfile | 1 + README.md | 2 +- docker-compose.yml | 2 +- priv/random.sh | 4 ++++ 5 files changed, 35 insertions(+), 10 deletions(-) create mode 100644 priv/random.sh diff --git a/.drone.yml b/.drone.yml index 0c1498e6..38f7423b 100644 --- a/.drone.yml +++ b/.drone.yml @@ -2,13 +2,19 @@ kind: pipeline type: docker name: cannery -cache: - mount: - - _build - - deps - - ~/.cache/dialyzer/plts/ - steps: +- name: restore-cache + image: drillster/drone-volume-cache + volumes: + - name: cache + path: /cache + settings: + restore: true + mount: + - _build + - deps + - ~/.cache/dialyzer/plts/ + - name: test image: bitwalker/alpine-elixir-phoenix:1.13 environment: @@ -31,10 +37,21 @@ steps: password: from_secret: docker_password when: - branch: - include: + branch: - stable +- name: rebuild-cache + image: drillster/drone-volume-cache + volumes: + - name: cache + path: /cache + settings: + rebuild: true + mount: + - _build + - deps + - ~/.cache/dialyzer/plts/ + services: - name: database image: postgres:13 @@ -44,6 +61,9 @@ services: POSTGRES_DB: postgres volumes: + - name: cache + host: + path: /tmp/drone-cache - name: docker_sock host: path: /var/run/docker.sock diff --git a/Dockerfile b/Dockerfile index f887792e..0ad8456d 100644 --- a/Dockerfile +++ b/Dockerfile @@ -47,6 +47,7 @@ USER nobody:nobody COPY --from=build --chown=nobody:nobody /app/_build/prod/rel/cannery ./ COPY --from=build --chown=nobody:nobody /app/priv /app/priv +RUN chmod +x /app/priv/random.sh ENV HOME=/app diff --git a/README.md b/README.md index a0e28f54..2d5965c3 100644 --- a/README.md +++ b/README.md @@ -21,7 +21,7 @@ The self-hosted firearm tracker website. 1. Copy the example [docker-compose.yml](https://gitea.bubbletea.dev/shibao/cannery/src/branch/stable/docker-compose.yml). into your local machine where you want. Bind mounts are created in the same directory by default. 1. Set the configuration variables in `docker-compose.yml`. You'll need to run - `docker run -it shibaobun/cannery mix phx.gen.secret` to generate a new + `docker run -it shibaobun/cannery /app/priv/random.sh` to generate a new secret key base. 1. Use `docker-compose up` or `docker-compose up -d` to start the container! diff --git a/docker-compose.yml b/docker-compose.yml index dffd4b91..8f4ede14 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -8,7 +8,7 @@ services: environment: - HOST="your.domain.com" - DATABASE_URL="ecto://postgres:postgres@cannery-db/cannery" - # Use `docker run -it shibaobun/cannery mix phx.gen.secret` to generate a secret key base + # Use `docker run -it shibaobun/cannery /app/priv/random.sh` to generate a secret key base - SECRET_KEY_BASE="change-me-this-is-really-important-seriously-change-it" # uncomment to enable public sign ups, not recommended # - REGISTRATION="public" diff --git a/priv/random.sh b/priv/random.sh new file mode 100644 index 00000000..1834f3e1 --- /dev/null +++ b/priv/random.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env sh +set -ou pipefail + +cat /dev/urandom | base64 | head -c 64