Used to build gnucash using ubuntu 14.04
943
I run this image like this:
docker run -v /home/lmat/source/gnucash:/repos/gnucash-origin:ro lmat/gnucash-build '/run' 'git clone gnucash-origin gnucash;';
/run is a script that kicks off the build, but it expects at least one command from you. The command(s) you provide should create the gnucash repository at /repos/gnucash. When your command(s) start, the working directory will be /repos. You can take this opportunity to check out a repository from wherever you want, and even do some setup like picking a branch. I mount my local gnucash repository into the docker container and clone that.
To run multiple commands, pass them as separate, quoted arguments:
docker run -v /home/lmat/source/gnucash:/repos/gnucash-origin:ro lmat/gnucash-build '/run' 'git clone --mirror gnucash-origin gnucash;' 'cd gnucash;' 'git checkout myfeature;';
As far as I can tell, you can't view my Dockerfile using docker hub, so here it is:
FROM ubuntu:14.04
RUN apt-get update -qq
RUN apt-get build-dep -qq gnucash
RUN apt-get install -qq swig
RUN apt-get install -qq libboost-all-dev
RUN apt-get --reinstall install -qq language-pack-en language-pack-fr
RUN apt-get install -qq git
RUN apt-get install -qq bash-completion
COPY run /
CMD /run
And here's what's in run:
#!/bin/bash
if [[ "$#" -lt 1 ]]; then
echo "You must send a statement that will create a repository at /repos/gnucash"
echo " If you have mounted a source readonly volume at /repos/gnucash-origin,"
echo " something like 'git clone gnucash/origin gnucash;"
echo " (commands are run from /repos)";
echo " or 'git clone https://github.com/gnucash/gnucash /repos/gnucash'";
exit 1;
fi
if [[ ! -d /repos ]]; then
mkdir /repos;
fi
cd /repos;
for command in "$@"; do
eval "$command"
done;
cd /repos/gnucash;
mkdir build; cd build;
../autogen.sh && ../configure;
make -j 3
TZ="America/Los_Angeles" make check -j 3
Content type
Image
Digest
Size
332.5 MB
Last updated
almost 10 years ago
docker pull lmat/gnucash-build