Initial attempts at dockerizing, cabal isn't cooperating.
[?]
Jun 8, 2015, 8:05 PM
4ZLEDBK7VGLKFUPENAFLUJYNFLKFYJ3TREPQ7P6PKMYGJUXB55HQCDependencies
- [2]
PGZJ736CUpdate aftok.cfg.example and revise INSTALL instructions - [3]
IZEVQF62Work in progress replacing sqlite with postgres. - [4]
4U7F3CPITHE GREAT RENAMING OF THINGS! - [5]
TNR3TEHKSwitch to Postgres + snaplet arch compiles. - [6]
Z3M53KTLAdrift. - [*]
AXKKXBWNInitial attempt at writing down my ideas for a company based on trust. - [*]
ADMKQQGCInitial empty Snap project. - [*]
XTBSG4C7Adding serveJSON combinator to eliminate some boilerplate from handlers. - [*]
W35DDBFYFactor common JSON conversions up into client lib module.
Change contents
- file addition: .dockerignore[8.2]
- file addition: Dockerfile[8.2]
## Dockerfile for the Aftok environmentFROM phusion/baseimage:0.9.16MAINTAINER Kris Nuttycombe <kris@aftok.com>## ensure locale is set during buildENV LANG C.UTF-8RUN echo 'deb http://ppa.launchpad.net/hvr/ghc/ubuntu trusty main' > /etc/apt/sources.list.d/ghc.list && \apt-key adv --keyserver keyserver.ubuntu.com --recv-keys F6F88286 && \apt-get update && \apt-get install -y --no-install-recommends \cabal-install-1.22 \ghc-7.10.2 \happy-1.19.5 \alex-3.1.4 \zlib1g-dev \libtinfo-dev \libsqlite3-0 \libsqlite3-dev \ca-certificates && \rm -rf /var/lib/apt/lists/*ENV PATH /root/.cabal/bin:/opt/cabal/1.22/bin:/opt/ghc/7.10.2/bin:/opt/happy/1.19.5/bin:/opt/alex/3.1.4/bin:$PATHADD ./aftok.cabal /opt/aftok/aftok.cabalRUN cabal updateRUN cd /opt/aftok && cabal sandbox init && cabal install --only-dependencies -j4ADD ./lib /opt/aftok/libADD ./server /opt/aftok/server# Set up /etc/aftok volume for configuration informationRUN mkdir /etc/aftokVOLUME ["/etc/aftok"]ADD ./conf/aftok.example.cfg /etc/aftok/aftok.cfgENV AFTOK_CFG /etc/aftok/aftok.cfg# This is the main shell script that starts the aftok serverRUN mkdir /etc/services/aftokADD ./docker/aftok-server.sh /etc/services/aftok/run# Use baseimage-docker's init system.CMD ["/sbin/my_init"] - file addition: docker[8.2]
- file addition: aftok-server.sh[0.1510]
#!/bin/bash/opt/aftok/dist/build/aftok-server/aftok-server - edit in server/Main.hs at line 6[10.626][11.918]
import System.Environment - replacement in server/Main.hs at line 26
cfg <- loadQConfig "conf/aftok.cfg"cfgPath <- try $ getEnv "AFTOK_CFG" :: IO (Either IOError String)cfg <- loadQConfig $ either (const "conf/aftok.cfg") id cfgPath