Merge pull request #1 from dysinger/master
Added example project, removed binaries from the project & split into two images
This commit is contained in:
commit
987ac4078e
21 changed files with 88 additions and 1974 deletions
1
.gitignore
vendored
Normal file
1
.gitignore
vendored
Normal file
|
@ -0,0 +1 @@
|
|||
/root/
|
|
@ -1,4 +0,0 @@
|
|||
FROM scratch
|
||||
ADD lib /lib
|
||||
ADD lib64 /lib64
|
||||
ADD usr /usr
|
61
Makefile
Normal file
61
Makefile
Normal file
|
@ -0,0 +1,61 @@
|
|||
default: docker-integer-gmp docker-integer-simple
|
||||
|
||||
root:
|
||||
@mkdir root
|
||||
root/bin: | root
|
||||
@mkdir root/bin
|
||||
root/bin/sh: | root/bin
|
||||
@cp -L /bin/sh root/bin/
|
||||
root/lib: | root
|
||||
@mkdir root/lib
|
||||
root/lib/x86_64-linux-gnu: | root/lib
|
||||
@mkdir root/lib/x86_64-linux-gnu
|
||||
root/lib/x86_64-linux-gnu/libc.so.6: | root/lib/x86_64-linux-gnu
|
||||
@cp -L /lib/x86_64-linux-gnu/libc.so.6 root/lib/x86_64-linux-gnu/
|
||||
root/lib/x86_64-linux-gnu/libdl.so.2: | root/lib/x86_64-linux-gnu
|
||||
@cp -L /lib/x86_64-linux-gnu/libdl.so.2 root/lib/x86_64-linux-gnu/
|
||||
root/lib/x86_64-linux-gnu/libm.so.6: | root/lib/x86_64-linux-gnu
|
||||
@cp -L /lib/x86_64-linux-gnu/libm.so.6 root/lib/x86_64-linux-gnu/
|
||||
root/lib/x86_64-linux-gnu/libpthread.so.0: | root/lib/x86_64-linux-gnu
|
||||
@cp -L /lib/x86_64-linux-gnu/libpthread.so.0 root/lib/x86_64-linux-gnu/
|
||||
root/lib/x86_64-linux-gnu/libutil.so.1: | root/lib/x86_64-linux-gnu
|
||||
@cp -L /lib/x86_64-linux-gnu/libutil.so.1 root/lib/x86_64-linux-gnu/
|
||||
root/lib/x86_64-linux-gnu/librt.so.1: | root/lib/x86_64-linux-gnu
|
||||
@cp -L /lib/x86_64-linux-gnu/librt.so.1 root/lib/x86_64-linux-gnu/
|
||||
root/lib/x86_64-linux-gnu/libz.so.1: | root/lib/x86_64-linux-gnu
|
||||
@cp -L /lib/x86_64-linux-gnu/libz.so.1 root/lib/x86_64-linux-gnu/
|
||||
root/lib64: | root
|
||||
@mkdir root/lib64
|
||||
root/lib64/ld-linux-x86-64.so.2: | root/lib64
|
||||
@cp -L /lib64/ld-linux-x86-64.so.2 root/lib64/
|
||||
root/usr: | root
|
||||
@mkdir root/usr
|
||||
root/usr/lib: | root/usr
|
||||
@mkdir root/usr/lib
|
||||
root/usr/lib/x86_64-linux-gnu: | root/usr/lib
|
||||
@mkdir root/usr/lib/x86_64-linux-gnu
|
||||
root/usr/lib/x86_64-linux-gnu/gconv: | root/usr/lib/x86_64-linux-gnu
|
||||
@mkdir root/usr/lib/x86_64-linux-gnu/gconv
|
||||
root/usr/lib/x86_64-linux-gnu/gconv/UTF-16.so: | root/usr/lib/x86_64-linux-gnu/gconv
|
||||
@cp -L /usr/lib/x86_64-linux-gnu/gconv/UTF-16.so root/usr/lib/x86_64-linux-gnu/gconv/
|
||||
root/usr/lib/x86_64-linux-gnu/gconv/UTF-32.so: | root/usr/lib/x86_64-linux-gnu/gconv
|
||||
@cp -L /usr/lib/x86_64-linux-gnu/gconv/UTF-32.so root/usr/lib/x86_64-linux-gnu/gconv/
|
||||
root/usr/lib/x86_64-linux-gnu/gconv/UTF-7.so: | root/usr/lib/x86_64-linux-gnu/gconv
|
||||
@cp -L /usr/lib/x86_64-linux-gnu/gconv/UTF-7.so root/usr/lib/x86_64-linux-gnu/gconv/
|
||||
root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules: | root/usr/lib/x86_64-linux-gnu/gconv
|
||||
@cp -L /usr/lib/x86_64-linux-gnu/gconv/gconv-modules root/usr/lib/x86_64-linux-gnu/gconv/
|
||||
root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache: | root/usr/lib/x86_64-linux-gnu/gconv/
|
||||
@cp -L /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache root/usr/lib/x86_64-linux-gnu/gconv/
|
||||
root/usr/lib/x86_64-linux-gnu/libgmp.so.10: | root/usr/lib/x86_64-linux-gnu
|
||||
@cp -L /usr/lib/x86_64-linux-gnu/libgmp.so.10 root/usr/lib/x86_64-linux-gnu/
|
||||
|
||||
docker-integer-gmp: | root/bin/sh root/lib/x86_64-linux-gnu/libc.so.6 root/lib/x86_64-linux-gnu/libdl.so.2 root/lib/x86_64-linux-gnu/libm.so.6 root/lib/x86_64-linux-gnu/libpthread.so.0 root/lib/x86_64-linux-gnu/librt.so.1 root/lib/x86_64-linux-gnu/libutil.so.1 root/lib/x86_64-linux-gnu/libz.so.1 root/lib64/ld-linux-x86-64.so.2 root/usr/lib/x86_64-linux-gnu/gconv/UTF-16.so root/usr/lib/x86_64-linux-gnu/gconv/UTF-32.so root/usr/lib/x86_64-linux-gnu/gconv/UTF-7.so root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache root/usr/lib/x86_64-linux-gnu/libgmp.so.10
|
||||
@tar -cC root .|docker import - haskell-scratch:integer-gmp
|
||||
|
||||
docker-integer-simple: | root/bin/sh root/lib/x86_64-linux-gnu/libc.so.6 root/lib/x86_64-linux-gnu/libdl.so.2 root/lib/x86_64-linux-gnu/libm.so.6 root/lib/x86_64-linux-gnu/libpthread.so.0 root/lib/x86_64-linux-gnu/librt.so.1 root/lib/x86_64-linux-gnu/libutil.so.1 root/lib/x86_64-linux-gnu/libz.so.1 root/lib64/ld-linux-x86-64.so.2 root/usr/lib/x86_64-linux-gnu/gconv/UTF-16.so root/usr/lib/x86_64-linux-gnu/gconv/UTF-32.so root/usr/lib/x86_64-linux-gnu/gconv/UTF-7.so root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules root/usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache
|
||||
@tar -c --exclude=libgmp.so.10 -C root .|docker import - haskell-scratch:integer-simple
|
||||
|
||||
clean:
|
||||
@rm -rf root
|
||||
|
||||
.PHONY: default docker-integer-gmp docker-integer-simple clean
|
3
example/.gitignore
vendored
Normal file
3
example/.gitignore
vendored
Normal file
|
@ -0,0 +1,3 @@
|
|||
*.hi
|
||||
*.o
|
||||
hello
|
6
example/Dockerfile
Normal file
6
example/Dockerfile
Normal file
|
@ -0,0 +1,6 @@
|
|||
#-*- mode:conf; -*-
|
||||
|
||||
FROM haskell-scratch:integer-gmp
|
||||
|
||||
ADD hello /usr/bin/hello
|
||||
CMD hello
|
16
example/Makefile
Normal file
16
example/Makefile
Normal file
|
@ -0,0 +1,16 @@
|
|||
default: run
|
||||
|
||||
hello:
|
||||
@ghc hello.hs
|
||||
@strip hello
|
||||
|
||||
image: | hello
|
||||
@docker build -t haskell-scratch:hello .
|
||||
|
||||
run: | image
|
||||
@docker run --rm --name hello -i -t haskell-scratch:hello
|
||||
|
||||
clean:
|
||||
@rm -rf hello
|
||||
|
||||
.PHONY: default image run
|
1
example/hello.hs
Normal file
1
example/hello.hs
Normal file
|
@ -0,0 +1 @@
|
|||
main = putStrLn "Hello World"
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
Binary file not shown.
Loading…
Reference in a new issue