Compare commits
2 Commits
dependabot
...
master
Author | SHA1 | Date | |
---|---|---|---|
7adfc6aa1d | |||
b8b71481c6 |
2
.dockerignore
Normal file
2
.dockerignore
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
node_modules
|
||||||
|
npm-debug.log
|
44
.gitea/workflows/docker-publish.yaml
Normal file
44
.gitea/workflows/docker-publish.yaml
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
name: Build & publish images
|
||||||
|
|
||||||
|
on: [push]
|
||||||
|
|
||||||
|
env:
|
||||||
|
REGISTRY: git.plantroon.com
|
||||||
|
IMAGE_NAME: ${{ github.repository }}
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
build-and-push-image:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
container:
|
||||||
|
image: catthehacker/ubuntu:act-latest
|
||||||
|
permissions:
|
||||||
|
contents: read
|
||||||
|
packages: write
|
||||||
|
|
||||||
|
steps:
|
||||||
|
- name: Checkout repository
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
|
||||||
|
- name: Log into registry ${{ env.REGISTRY }}
|
||||||
|
if: github.event_name != 'pull_request'
|
||||||
|
uses: docker/login-action@28218f9b04b4f3f62068d7b6ce6ca5b26e35336c
|
||||||
|
with:
|
||||||
|
registry: ${{ env.REGISTRY }}
|
||||||
|
username: ${{ github.actor }}
|
||||||
|
password: ${{ secrets.CR_PAT }}
|
||||||
|
|
||||||
|
- name: Extract Docker metadata
|
||||||
|
id: meta
|
||||||
|
uses: https://github.com/docker/metadata-action@98669ae865ea3cffbcbaa878cf57c20bbf1c6c38
|
||||||
|
with:
|
||||||
|
images: git.plantroon.com/aux/keyserver
|
||||||
|
|
||||||
|
- name: Build and push Docker image
|
||||||
|
id: build-and-push
|
||||||
|
uses: docker/build-push-action@ac9327eae2b366085ac7f6a2d02df8aa8ead720a
|
||||||
|
with:
|
||||||
|
context: .
|
||||||
|
push: true
|
||||||
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
|
|
9
Dockerfile
Normal file
9
Dockerfile
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
FROM node:16
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
COPY package*.json ./
|
||||||
|
RUN npm ci --omit=dev
|
||||||
|
COPY . .
|
||||||
|
EXPOSE 3000
|
||||||
|
|
||||||
|
CMD [ "node", "index.js" ]
|
26
docker-compose.yml
Normal file
26
docker-compose.yml
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
version: '3'
|
||||||
|
|
||||||
|
services:
|
||||||
|
mongodb:
|
||||||
|
image: mongo
|
||||||
|
volumes:
|
||||||
|
- ./data/db:/data/db
|
||||||
|
- ./mongo-init.js:/docker-entrypoint-initdb.d/mongo-init.js:ro
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
env_file:
|
||||||
|
- env.sample
|
||||||
|
|
||||||
|
keyserver:
|
||||||
|
image: git.plantroon.com/aux/keyserver:master
|
||||||
|
ports:
|
||||||
|
- "12345:3000"
|
||||||
|
depends_on:
|
||||||
|
- mongodb
|
||||||
|
networks:
|
||||||
|
- backend
|
||||||
|
env_file:
|
||||||
|
- env.sample
|
||||||
|
|
||||||
|
networks:
|
||||||
|
backend:
|
30
env.sample
Normal file
30
env.sample
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
NODE_ENV=production
|
||||||
|
LOG_LEVEL=debug
|
||||||
|
PORT=3000
|
||||||
|
PAPERTRAIL_HOST=''
|
||||||
|
PAPERTRAIL_PORT=''
|
||||||
|
|
||||||
|
MONGO_URI=mongodb:27017/keyserver_db
|
||||||
|
MONGO_USER=keyserver
|
||||||
|
MONGO_PASS=changeme
|
||||||
|
MONGO_INITDB_ROOT_USERNAME=keyserver
|
||||||
|
MONGO_INITDB_ROOT_PASSWORD=changeme
|
||||||
|
MONGO_INITDB_DATABASE=keyserver_db
|
||||||
|
|
||||||
|
SENDER_NAME=keyserver
|
||||||
|
SENDER_EMAIL=changeme
|
||||||
|
|
||||||
|
SMTP_HOST=changeme
|
||||||
|
SMTP_PORT=587
|
||||||
|
SMTP_TLS=false
|
||||||
|
|
||||||
|
SMTP_STARTTLS=true
|
||||||
|
SMTP_PGP=''
|
||||||
|
SMTP_USER=''
|
||||||
|
SMTP_PASS=''
|
||||||
|
|
||||||
|
HTTPS_UPGRADE=true
|
||||||
|
HTTPS_KEY_PIN=''
|
||||||
|
HTTPS_KEY_PIN_BACKUP=''
|
||||||
|
|
||||||
|
PUBLIC_KEY_PURGE_TIME=30
|
12
mongo-init.js
Normal file
12
mongo-init.js
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
db.createUser(
|
||||||
|
{
|
||||||
|
user: process.env.MONGO_INITDB_ROOT_USERNAME,
|
||||||
|
pwd: process.env.MONGO_INITDB_ROOT_PASSWORD,
|
||||||
|
roles: [
|
||||||
|
{
|
||||||
|
role: "readWrite",
|
||||||
|
db: process.env.MONGO_INITDB_DATABASE
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
);
|
6
package-lock.json
generated
6
package-lock.json
generated
@ -557,9 +557,9 @@
|
|||||||
"integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
|
"integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
|
||||||
},
|
},
|
||||||
"cookiejar": {
|
"cookiejar": {
|
||||||
"version": "2.1.4",
|
"version": "2.1.2",
|
||||||
"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.4.tgz",
|
"resolved": "https://registry.npmjs.org/cookiejar/-/cookiejar-2.1.2.tgz",
|
||||||
"integrity": "sha512-LDx6oHrK+PhzLKJU9j5S7/Y3jM/mUHvD/DeI1WQmJn652iPC5Y4TBzC9l+5OMOXlyTTA+SmVUPm0HQUwpD5Jqw==",
|
"integrity": "sha512-Mw+adcfzPxcPeI+0WlvRrr/3lGVO0bD75SxX6811cxSh1Wbxx7xZBGK1eVtDf6si8rg2lhnUjsVLMFMfbRIuwA==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"cookies": {
|
"cookies": {
|
||||||
|
Loading…
Reference in New Issue
Block a user