ソースを参照

feat(docker): provide docker integration

Provide docker integration to being able to run within a container.
TheDonDope 7 年 前
コミット
693a40ca9e
5 ファイル変更60 行追加7 行削除
  1. 23 0
      .docker/resume.dockerfile
  2. 9 0
      .dockerignore
  3. 7 7
      Makefile
  4. 8 0
      README.md
  5. 13 0
      docker-compose.yml

+ 23 - 0
.docker/resume.dockerfile

@@ -0,0 +1,23 @@
+FROM ubuntu
+
+# prepare a user which runs everything locally! - required in child images!
+RUN useradd --user-group --create-home --shell /bin/false app
+
+ENV HOME=/home/app
+WORKDIR $HOME
+
+RUN apt-get update
+RUN apt-get install build-essential pandoc context -y
+
+ENV APP_NAME=resume
+
+# before switching to user we need to set permission properly
+# copy all files, except the ignored files from .dockerignore
+COPY . $HOME/$APP_NAME/
+COPY ./.docker/Makefile $HOME/$APP_NAME/
+RUN chown -R app:app $HOME/*
+
+USER app
+WORKDIR $HOME/$APP_NAME
+
+RUN make clean

+ 9 - 0
.dockerignore

@@ -0,0 +1,9 @@
+*.tuc
+*.log
+*.pdf
+*.html
+resume.tex
+*.swo
+*.swp
+*.docx
+*.rtf

+ 7 - 7
Makefile

@@ -23,10 +23,10 @@ resume.rtf: resume.md
 	pandoc -s -S resume.md -o resume.rtf
 
 clean:
-	rm resume.html
-	rm resume.tex
-	rm resume.tuc
-	rm resume.log
-	rm resume.pdf
-	rm resume.docx
-	rm resume.rtf
+	rm -f resume.html
+	rm -f resume.tex
+	rm -f resume.tuc
+	rm -f resume.log
+	rm -f resume.pdf
+	rm -f resume.docx
+	rm -f resume.rtf

+ 8 - 0
README.md

@@ -9,6 +9,14 @@ vim resume.md   # insert your own resume info
 make
 ```
 
+### Running Dockerized
+```bash
+git clone https://github.com/mszep/pandoc_resume
+cd pandoc_resume
+vim resume.md   # insert your own resume info
+docker-compose up -d
+```
+
 ### Requirements
 
  * ConTeXt

+ 13 - 0
docker-compose.yml

@@ -0,0 +1,13 @@
+version: '2'
+
+services:
+
+  resume-make:
+    build:
+      context: .
+      dockerfile: ./.docker/resume.dockerfile
+    command: make
+    container_name: resume-make
+    image: resume-make
+    volumes:
+      - .:/home/app/resume