Skip to content

Commit

Permalink
optional sqlite3 support: add dockerfile, docker-compose, and statusp…
Browse files Browse the repository at this point in the history
…age config
  • Loading branch information
Kevin Ard committed Oct 9, 2020
1 parent ef8c510 commit 461b1ce
Show file tree
Hide file tree
Showing 4 changed files with 84 additions and 0 deletions.
3 changes: 3 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -25,3 +25,6 @@ test-%:

docker:
docker build --no-cache . -t $(DOCKER_IMAGE)

docker_sqlite:
docker build --no-cache -t $(DOCKER_IMAGE):sqlite3 -f sqlite3.Dockerfile .
28 changes: 28 additions & 0 deletions docker-compose.sqlite3.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
version: "2.4"

services:
#-- worker node
worker:
image: checkup:sqlite3
volumes:
- ./checkup.json:/app/checkup.json
- ./checks:/app/checks
entrypoint:
- checkup
- every
- 10s
user: "1000:1000"
restart: always

#-- client
checkup:
hostname: checkup
image: checkup:sqlite3
ports:
- 3000:3000
volumes:
- ./checkup.json:/app/checkup.json
- ./checks:/app/checks
- ./statuspage/js/config_sqlite3.js:/app/statuspage/js/config.js
user: "1000:1000"
restart: always
25 changes: 25 additions & 0 deletions sqlite3.Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
FROM golang:1.15-buster as builder

COPY . /app
WORKDIR /app
RUN apt-get install make && make build-sqlite3

#----------------------------
FROM golang:1.15-buster

# install sqlite
RUN apt-get update && apt-get install sqlite3 && rm -rf /var/lib/apt/lists/*

WORKDIR /app

COPY --from=builder /app/builds/checkup /usr/local/bin/checkup
ADD statuspage/ /app/statuspage

RUN addgroup --gid 1000 app
RUN adduser --no-create-home --uid 1000 --gecos "" --gid 1000 --disabled-password app

USER app

EXPOSE 3000
ENTRYPOINT ["checkup"]
CMD ["serve"]
28 changes: 28 additions & 0 deletions statuspage/js/config_sqlite3.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
checkup.config = {
// How much history to show on the status page. Long durations and
// frequent checks make for slow loading, so be conservative.
// This value is in NANOSECONDS to mirror Go's time package.
"timeframe": 1 * time.Day,

// How often, in seconds, to pull new checks and update the page.
"refresh_interval": 60,

// Configure read-only access to stored checks. This configuration
// depends on your storage provider. Any credentials and other values
// here will be visible to everyone, so use keys with ONLY read access!
"storage": {
// Storage type (fs for local, s3 for AWS S3)
"type": "sqlite3",
// Local checkup server by default, set to github page if
// you're hosting your status page on GitHub.
// e.g. "https://sourcegraph.github.io/checkup/checks/"
"url": "/"
},

// The text to display along the top bar depending on overall status.
"status_text": {
"healthy": "Situation Normal",
"degraded": "Degraded Service",
"down": "Service Disruption"
}
};

0 comments on commit 461b1ce

Please sign in to comment.