diff --git a/.drone.yml b/.drone.yml new file mode 100644 index 0000000..61868bb --- /dev/null +++ b/.drone.yml @@ -0,0 +1,23 @@ +--- +kind: pipeline +name: deploy to vps.biobulkbende.org +steps: + - name: build container + image: plugins/docker + settings: + username: + from_secret: docker_reg_username + password: + from_secret: docker_reg_passwd + repo: decentral1se/biobulkbende.org + tags: latest + + - name: deployment + image: decentral1se/stack-ssh-deploy:latest + settings: + stack: biobulkbende_org + deploy_key: + from_secret: drone_ssh_swarm.autonomic.zone +trigger: + branch: + - main diff --git a/Dockerfile b/Dockerfile index e86a70c..9f30939 100644 --- a/Dockerfile +++ b/Dockerfile @@ -6,6 +6,8 @@ COPY ./docs /app WORKDIR /app +RUN apk add --no-cache curl + RUN npm install http-server CMD ["npm", "start"] diff --git a/compose.yml b/compose.yml new file mode 100644 index 0000000..d7929d1 --- /dev/null +++ b/compose.yml @@ -0,0 +1,28 @@ +--- +version: "3.8" + +services: + app: + image: "decentral1se/biobulkbende.org:latest" + healthcheck: + test: ["CMD", "curl", "-f", "http://localhost:8081"] + interval: 10s + timeout: 10s + retries: 10 + start_period: 15s + networks: + - proxy + deploy: + update_config: + failure_action: rollback + order: start-first + labels: + - "traefik.enable=true" + - "traefik.http.services.biobulkbende-org.loadbalancer.server.port=8081" + - "traefik.http.routers.biobulkbende-org.rule=Host(`biobulkbende.org`)" + - "traefik.http.routers.biobulkbende-org.entrypoints=web-secure" + - "traefik.http.routers.biobulkbende-org.tls.certresolver=production" + +networks: + proxy: + external: true