File tree 11 files changed +371
-0
lines changed
11 files changed +371
-0
lines changed Original file line number Diff line number Diff line change
1
+ lib /
Original file line number Diff line number Diff line change
1
+ # ------------------------------------------------------
2
+ # Dockerfile
3
+ # ------------------------------------------------------
4
+ # image: docker-perl
5
+ # tag: 5.016003
6
+ # name: amuxbit/docker-perl
7
+ # version: 1.0.0
8
+ # repo: https://github.com/amuxbit/docker-perl
9
+ # how-to: docker build --force-rm -t amuxbit/docker-perl:5.016003 .
10
+ # run: docker run -t -i amuxbit/docker-perl:5.016003 /opt/perl5/perls/perl-5.20.2/bin/perl -e "print('hi from inside a container')"
11
+ # run interactive: docker run -t -i docker-perl /bin/bash
12
+ # requires: ubuntu
13
+
14
+ # ------------------------------------------------------
15
+
16
+ FROM amuxbit/docker-ubuntu:latest
17
+ MAINTAINER amuxbit
18
+
19
+ # -----> Env
20
+ ENV WORKDIR /tmp/build/docker-perl
21
+ ENV PERL_VER perl-5.16.3
22
+ ENV SYS_PERLBREW_ROOT /opt/perl5
23
+ ENV PERLBREW_ROOT=$SYS_PERLBREW_ROOT
24
+ ENV PERLBREW_HOME=/opt/.perlbrew
25
+ ENV PATH=$PERLBREW_ROOT/perls/$PERL_VER/bin:$PATH
26
+ ENV SHELL=/bin/bash
27
+
28
+ WORKDIR /tmp/build/docker-perl
29
+
30
+ # -----> Add assets
31
+ ADD ./ubuntu $WORKDIR/ubuntu
32
+
33
+ # -----> Execute
34
+ # Libs
35
+ RUN git clone https://github.com/Amuxbit/container-automation-lib.git lib
36
+ RUN chmod +x $WORKDIR/ubuntu
37
+ RUN $WORKDIR/ubuntu
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ DOCKERNAME=" amuxbit/docker-perl:5.016003"
4
+
5
+ time docker build --force-rm -t $DOCKERNAME .
6
+
7
+ if [ $? -eq 0 ]; then
8
+ echo
9
+ echo
10
+ echo " To pull it"
11
+ echo " docker pull $DOCKERNAME "
12
+ echo
13
+ echo " To use this docker:"
14
+ echo " docker run -d -P $DOCKERNAME "
15
+ echo
16
+ echo " To run a specific perl program:"
17
+ echo " docker run -t -i $DOCKERNAME /opt/perl5/perls/perl-5.20.2/bin/perl -e \" print('hi from inside a container running perl version ', $])\" "
18
+ echo
19
+ echo " To run in interactive mode for debug:"
20
+ echo " docker run -t -i $DOCKERNAME /bin/bash -lc \" source /etc/environment && bash\" "
21
+ echo
22
+ else
23
+ echo
24
+ echo " There was an error with the docker build, see the console log."
25
+ echo
26
+ fi ;
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ source lib/core.sh
4
+
5
+ os () {
6
+ installPackages () {
7
+ local packages=(" curl" " libssl-dev" )
8
+ runApt " ${packages[@]} "
9
+ }
10
+
11
+ local commands=(info updateApt installPackages cleanApt)
12
+ run " ${commands[@]} "
13
+ }
14
+
15
+ install () {
16
+ dirs () {
17
+ sudo mkdir -p /opt/perl5/dists
18
+ sudo mkdir -p /opt/perl5/build
19
+ }
20
+
21
+ downloadPerlbrew () {
22
+ curl -L http://install.perlbrew.pl | bash
23
+ }
24
+
25
+ profile () {
26
+ printf " export PERLBREW_HOME=/opt/.perlbrew\n" >> ~ /.bashrc
27
+ printf " source /opt/perl5/etc/bashrc\n" >> ~ /.bashrc
28
+ }
29
+
30
+ installPerl () {
31
+ shell " perlbrew install $PERL_VER --switch -n -j 4"
32
+ }
33
+
34
+ installCpanm () {
35
+ shell " perlbrew install-cpanm"
36
+ }
37
+
38
+ local commands=(dirs downloadPerlbrew profile installPerl installCpanm)
39
+ run " ${commands[@]} "
40
+ }
41
+
42
+ main () {
43
+ local commands=(os install)
44
+ run " ${commands[@]} "
45
+ catch
46
+ }
47
+
48
+ main
Original file line number Diff line number Diff line change
1
+ # ------------------------------------------------------
2
+ # Dockerfile
3
+ # ------------------------------------------------------
4
+ # image: docker-perl
5
+ # tag: 5.018002
6
+ # name: amuxbit/docker-perl
7
+ # version: 1.0.0
8
+ # repo: https://github.com/amuxbit/docker-perl
9
+ # how-to: docker build --force-rm -t amuxbit/docker-perl:5.018002 .
10
+ # run: docker run -t -i amuxbit/docker-perl:5.018002 /opt/perl5/perls/perl-5.20.2/bin/perl -e "print('hi from inside a container')"
11
+ # run interactive: docker run -t -i docker-perl /bin/bash
12
+ # requires: ubuntu
13
+
14
+ # ------------------------------------------------------
15
+
16
+ FROM amuxbit/docker-ubuntu:latest
17
+ MAINTAINER amuxbit
18
+
19
+ # -----> Env
20
+ ENV WORKDIR /tmp/build/docker-perl
21
+ ENV PERL_VER perl-5.18.2
22
+ ENV SYS_PERLBREW_ROOT /opt/perl5
23
+ ENV PERLBREW_ROOT=$SYS_PERLBREW_ROOT
24
+ ENV PERLBREW_HOME=/opt/.perlbrew
25
+ ENV PATH=$PERLBREW_ROOT/perls/$PERL_VER/bin:$PATH
26
+ ENV SHELL=/bin/bash
27
+
28
+ WORKDIR /tmp/build/docker-perl
29
+
30
+ # -----> Add assets
31
+ ADD ./ubuntu $WORKDIR/ubuntu
32
+
33
+ # -----> Execute
34
+ # Libs
35
+ RUN git clone https://github.com/Amuxbit/container-automation-lib.git lib
36
+ RUN chmod +x $WORKDIR/ubuntu
37
+ RUN $WORKDIR/ubuntu
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ DOCKERNAME=" amuxbit/docker-perl:5.018002"
4
+
5
+ time docker build --force-rm -t $DOCKERNAME .
6
+
7
+ if [ $? -eq 0 ]; then
8
+ echo
9
+ echo
10
+ echo " To pull it"
11
+ echo " docker pull $DOCKERNAME "
12
+ echo
13
+ echo " To use this docker:"
14
+ echo " docker run -d -P $DOCKERNAME "
15
+ echo
16
+ echo " To run a specific perl program:"
17
+ echo " docker run -t -i $DOCKERNAME /opt/perl5/perls/perl-5.20.2/bin/perl -e \" print('hi from inside a container running perl version ', $])\" "
18
+ echo
19
+ echo " To run in interactive mode for debug:"
20
+ echo " docker run -t -i $DOCKERNAME /bin/bash -lc \" source /etc/environment && bash\" "
21
+ echo
22
+ else
23
+ echo
24
+ echo " There was an error with the docker build, see the console log."
25
+ echo
26
+ fi ;
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ source lib/core.sh
4
+
5
+ os () {
6
+ installPackages () {
7
+ local packages=(" curl" " libssl-dev" )
8
+ runApt " ${packages[@]} "
9
+ }
10
+
11
+ local commands=(info updateApt installPackages cleanApt)
12
+ run " ${commands[@]} "
13
+ }
14
+
15
+ install () {
16
+ dirs () {
17
+ sudo mkdir -p /opt/perl5/dists
18
+ sudo mkdir -p /opt/perl5/build
19
+ }
20
+
21
+ downloadPerlbrew () {
22
+ curl -L http://install.perlbrew.pl | bash
23
+ }
24
+
25
+ profile () {
26
+ printf " export PERLBREW_HOME=/opt/.perlbrew\n" >> ~ /.bashrc
27
+ printf " source /opt/perl5/etc/bashrc\n" >> ~ /.bashrc
28
+ }
29
+
30
+ installPerl () {
31
+ shell " perlbrew install $PERL_VER --switch -n -j 4"
32
+ }
33
+
34
+ installCpanm () {
35
+ shell " perlbrew install-cpanm"
36
+ }
37
+
38
+ local commands=(dirs downloadPerlbrew profile installPerl installCpanm)
39
+ run " ${commands[@]} "
40
+ }
41
+
42
+ main () {
43
+ local commands=(os install)
44
+ run " ${commands[@]} "
45
+ catch
46
+ }
47
+
48
+ main
Original file line number Diff line number Diff line change
1
+ # ------------------------------------------------------
2
+ # Dockerfile
3
+ # ------------------------------------------------------
4
+ # image: docker-perl
5
+ # tag: 5.020002
6
+ # name: amuxbit/docker-perl
7
+ # version: 1.0.0
8
+ # repo: https://github.com/amuxbit/docker-perl
9
+ # how-to: docker build --force-rm -t amuxbit/docker-perl:5.020002 .
10
+ # run: docker run -t -i amuxbit/docker-perl:5.020002 /opt/perl5/perls/perl-5.20.2/bin/perl -e "print('hi from inside a container')"
11
+ # run interactive: docker run -t -i docker-perl /bin/bash
12
+ # requires: ubuntu
13
+
14
+ # ------------------------------------------------------
15
+
16
+ FROM amuxbit/docker-ubuntu:latest
17
+ MAINTAINER amuxbit
18
+
19
+ # -----> Env
20
+ ENV WORKDIR /tmp/build/docker-perl
21
+ ENV PERL_VER perl-5.20.2
22
+ ENV SYS_PERLBREW_ROOT /opt/perl5
23
+ ENV PERLBREW_ROOT=$SYS_PERLBREW_ROOT
24
+ ENV PERLBREW_HOME=/opt/.perlbrew
25
+ ENV PATH=$PERLBREW_ROOT/perls/$PERL_VER/bin:$PATH
26
+ ENV SHELL=/bin/bash
27
+
28
+ WORKDIR /tmp/build/docker-perl
29
+
30
+ # -----> Add assets
31
+ ADD ./ubuntu $WORKDIR/ubuntu
32
+
33
+ # -----> Execute
34
+ # Libs
35
+ RUN git clone https://github.com/Amuxbit/container-automation-lib.git lib
36
+ RUN chmod +x $WORKDIR/ubuntu
37
+ RUN $WORKDIR/ubuntu
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ DOCKERNAME=" amuxbit/docker-perl:5.020002"
4
+
5
+ time docker build --force-rm -t $DOCKERNAME .
6
+
7
+ if [ $? -eq 0 ]; then
8
+ echo
9
+ echo
10
+ echo " To pull it"
11
+ echo " docker pull $DOCKERNAME "
12
+ echo
13
+ echo " To use this docker:"
14
+ echo " docker run -d -P $DOCKERNAME "
15
+ echo
16
+ echo " To run a specific perl program:"
17
+ echo " docker run -t -i $DOCKERNAME /opt/perl5/perls/perl-5.20.2/bin/perl -e \" print('hi from inside a container running perl version ', $])\" "
18
+ echo
19
+ echo " To run in interactive mode for debug:"
20
+ echo " docker run -t -i $DOCKERNAME bash
21
+ echo
22
+ else
23
+ echo
24
+ echo " There was an error with the docker build, see the console log."
25
+ echo
26
+ fi;
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ source lib/core.sh
4
+
5
+ os () {
6
+ installPackages () {
7
+ local packages=(" curl" " libssl-dev" )
8
+ runApt " ${packages[@]} "
9
+ }
10
+
11
+ local commands=(info updateApt installPackages cleanApt)
12
+ run " ${commands[@]} "
13
+ }
14
+
15
+ install () {
16
+ dirs () {
17
+ sudo mkdir -p /opt/perl5/dists
18
+ sudo mkdir -p /opt/perl5/build
19
+ }
20
+
21
+ downloadPerlbrew () {
22
+ curl -L http://install.perlbrew.pl | bash
23
+ }
24
+
25
+ profile () {
26
+ printf " export PERLBREW_HOME=/opt/.perlbrew\n" >> ~ /.bashrc
27
+ printf " source /opt/perl5/etc/bashrc\n" >> ~ /.bashrc
28
+ }
29
+
30
+ installPerl () {
31
+ shell " perlbrew install $PERL_VER --switch -n -j 4"
32
+ }
33
+
34
+ installCpanm () {
35
+ shell " perlbrew install-cpanm"
36
+ }
37
+
38
+ local commands=(dirs downloadPerlbrew profile installPerl installCpanm)
39
+ run " ${commands[@]} "
40
+ }
41
+
42
+ main () {
43
+ local commands=(os install)
44
+ run " ${commands[@]} "
45
+ catch
46
+ }
47
+
48
+ main
Original file line number Diff line number Diff line change
1
+ #! /bin/bash
2
+
3
+ BUILDS=(5.016003 5.018002 5.020002)
4
+ LATEST=" 5.020002"
5
+
6
+ dockerLatest () {
7
+ echo " amuxbit/docker-perl:latest -> amuxbit/docker-perl:$LATEST "
8
+ docker tag -f amuxbit/docker-perl:$LATEST amuxbit/docker-perl:latest
9
+ }
10
+
11
+ buildVersion () {
12
+ pushd $1
13
+ bash build.sh
14
+ popd
15
+ }
16
+
17
+ build () {
18
+ runCmd buildVersion " ${BUILDS[@]} "
19
+ }
20
+
21
+ main () {
22
+ if [ -e lib ]; then
23
+ pushd lib
24
+ git pull
25
+ popd
26
+ else
27
+ git clone
[email protected] :Amuxbit/container-automation-lib.git lib
28
+ fi
29
+
30
+ source lib/core.sh
31
+
32
+ local commands=(setTrap info build dockerLatest)
33
+ run " ${commands[@]} "
34
+ catch
35
+ }
36
+
37
+ main
You can’t perform that action at this time.
0 commit comments