This commit is contained in:
Ross Crawford-d'Heureuse 2020-10-09 14:42:12 +02:00
parent 8a9a7be0c7
commit f80c142b6f
4 changed files with 117 additions and 0 deletions

8
Dockerfile Normal file
View File

@ -0,0 +1,8 @@
FROM node:latest
WORKDIR /app
ADD . .
RUN npm install
ENTRYPOINT ["node"]
CMD [ "index.js" ]

36
Makefile Normal file
View File

@ -0,0 +1,36 @@
.PHONY: all build login push run
NAME := rosscdh/keyserver
TAG := $$(git log -1 --pretty=%h)
VERSION := ${NAME}:${TAG}
LATEST := ${NAME}:latest
BUILD_REPO_ORIGIN=$$(git config --get remote.origin.url)
BUILD_COMMIT_SHA1:=$$(git rev-parse --short HEAD)
BUILD_COMMIT_DATE:=$$(git log -1 --date=short --pretty=format:%ct)
BUILD_BRANCH:=$$(git symbolic-ref --short HEAD)
BUILD_DATE:=$$(date -u +"%Y-%m-%dT%H:%M:%SZ")
all: build login push
build:
docker build -t ${LATEST} -t ${LATEST} \
--build-arg BUILD_COMMIT_SHA1=${BUILD_COMMIT_SHA1} \
--build-arg BUILD_COMMIT_DATE=${BUILD_COMMIT_DATE} \
--build-arg BUILD_BRANCH=${BUILD_BRANCH} \
--build-arg BUILD_DATE=${BUILD_DATE} \
--build-arg BUILD_REPO_ORIGIN=${BUILD_REPO_ORIGIN} \
.
login:
docker login ${REGISTRY}
push:
docker push ${LATEST}
docker push ${TAG}
run:
#docker run -v ${PWD}/src:/app/src -p8090:3000 ${LATEST}
docker run -p8090:3000 ${LATEST}

40
docker-compose.yml Normal file
View File

@ -0,0 +1,40 @@
version: '3'
services:
mongodb:
image: mongo
volumes:
- mongo-data:/data/db
networks:
- backend
env_file:
- env.sample
mailhog:
image: mailhog/mailhog
ports:
- 8025:8025
networks:
- backend
keyserver:
build:
context: .
args:
USER_ID: ${USER_ID:-1000}
ports:
- "3000:3000"
depends_on:
- mongodb
- mailhog
networks:
- backend
env_file:
- env.sample
volumes:
mongo-data:
driver: local
networks:
backend:

33
env.sample Normal file
View File

@ -0,0 +1,33 @@
LOG_LEVEL=debug
PORT=3000
PAPERTRAIL_HOST=''
PAPERTRAIL_PORT=''
# docker-compose exec -it mongodb bash
# mongo -u keyserver_user -p keyserver_pass
# use keyserver_db
# db.createUser({ user:"keyserver_user", pwd:"keyserver_pass", roles:[{ role:"readWrite", db:"keyserver_db" }] })
MONGO_URI=mongodb:27017/keyserver_db
MONGO_USER=keyserver_user
MONGO_PASS=keyserver_pass
MONGO_INITDB_ROOT_USERNAME=keyserver_user
MONGO_INITDB_ROOT_PASSWORD=keyserver_pass
SENDER_NAME=keyserver
SENDER_EMAIL=keyserver@example.com
SMTP_HOST=mailhog
SMTP_PORT=1025
SMTP_TLS=false
SMTP_STARTTLS=''
SMTP_PGP=''
SMTP_USER=''
SMTP_PASS=''
HTTPS_UPGRADE=false
HTTPS_KEY_PIN=''
HTTPS_KEY_PIN_BACKUP=''
PUBLIC_KEY_PURGE_TIME=30