Add docker environment for local development (#257)
* Add docker environment * Add document of docker * Move docker files * Change context * Move git submodule command to entrypoint.sh * Update README
This commit is contained in:
parent
abb770ebd1
commit
030c52020e
4 changed files with 61 additions and 0 deletions
14
docker/Dockerfile
Normal file
14
docker/Dockerfile
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
FROM nimlang/nim:1.2.6-ubuntu
|
||||
|
||||
RUN apt-get update -yqq \
|
||||
&& apt-get install -y --no-install-recommends \
|
||||
libsass-dev \
|
||||
sqlite3 \
|
||||
&& apt-get clean \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /app
|
||||
COPY . /app
|
||||
|
||||
# install dependencies
|
||||
RUN nimble install -Y
|
||||
12
docker/docker-compose.yml
Normal file
12
docker/docker-compose.yml
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
version: "3.7"
|
||||
|
||||
services:
|
||||
forum:
|
||||
build:
|
||||
context: ../
|
||||
dockerfile: ./docker/Dockerfile
|
||||
volumes:
|
||||
- "../:/app"
|
||||
ports:
|
||||
- "5000:5000"
|
||||
entrypoint: "/app/docker/entrypoint.sh"
|
||||
19
docker/entrypoint.sh
Executable file
19
docker/entrypoint.sh
Executable file
|
|
@ -0,0 +1,19 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -eu
|
||||
|
||||
git submodule update --init --recursive
|
||||
|
||||
# setup
|
||||
nimble c -d:release src/setup_nimforum.nim
|
||||
./src/setup_nimforum --dev
|
||||
|
||||
# build frontend
|
||||
nimble c -r src/buildcss
|
||||
nimble js -d:release src/frontend/forum.nim
|
||||
mkdir -p public/js
|
||||
cp src/frontend/forum.js public/js/forum.js
|
||||
|
||||
# build backend
|
||||
nimble c src/forum.nim
|
||||
./src/forum
|
||||
Loading…
Add table
Add a link
Reference in a new issue