[mlpack] Prepackaged Dev Environment
Ryan Birmingham
rainventions at gmail.com
Mon Nov 4 14:44:16 EST 2019
In the mean time, I've had luck with the below dockerfile:
# Using debian's latest image as base-image.
FROM ubuntu
RUN apt-get update -qq && \
apt-get install -y --no-install-recommends python-pip cmake wget sudo \
libopenblas-dev liblapack-dev binutils-dev libboost-all-dev pkg-config \
make txt2man git doxygen libarmadillo-dev build-essential
# Get mlpack version.
ARG mlpack_archive
# Update software repository, install dependencies and build mlpack.
RUN useradd -m mlpack && echo "mlpack:mlpack" | chpasswd && \
adduser mlpack sudo && su mlpack && cd /home/mlpack/
WORKDIR /home/mlpack/
# Copy mlpack source so this can build itself based on git location/tags
and any dev edits locally
COPY ./ /home/mlpack/
RUN mkdir build
WORKDIR /home/mlpack/build
RUN cmake .. && make && make install && chown -R mlpack:mlpack /home/mlpack
ENV PROJ_WORK_DIR /home/mlpack/build/
# Setup environment.
ENV LD_LIBRARY_PATH /usr/local/lib/
USER mlpack
WORKDIR /home/mlpack
CMD /bin/bash
-Ryan Birmingham
On Mon, Nov 4, 2019 at 12:05 PM Ryan Birmingham <rainventions at gmail.com>
wrote:
> Hello,
>
> Some confusion here, I can't find the template you're starting from:
>
> Step 1/13 : FROM mlpack/templates:mlpack-stretch-27-template
> pull access denied for mlpack/templates, repository does not exist or may
> require 'docker login': denied: requested access to the resource is denied
> -Ryan Birmingham
>
>
> On Fri, Nov 1, 2019 at 10:35 PM Marcus Edel <marcus.edel at fu-berlin.de>
> wrote:
>
>> Hello,
>>
>> The docker images on docker-hub are based on Debian stretch, they are not
>> as
>> stripped down as what we use for the matrix build, as I think it nice to
>> have at
>> least some tools around. Anyway if you have a specific dev scenario in
>> mind, I
>> guess we should just rewrite the Dockerfile and setup a Jenkins job that
>> builds
>> everything once there is a new release and a nightly version would be
>> great as
>> well.
>>
>> Thanks,
>> Marcus
>>
>> Here is the Dockerfile I used:
>>
>> FROM mlpack/templates:mlpack-stretch-27-template
>>
>> # Meta information.
>> LABEL maintainer="marcus.edel at fu-berlin.de"
>>
>> # Get mlpack version.
>> ARG mlpack_archive
>>
>> # Update software repository, install dependencies and build mlpack.
>> RUN useradd -m mlpack && echo "mlpack:mlpack" | chpasswd && \
>> adduser mlpack sudo && su mlpack && cd /home/mlpack/ && \
>> wget -O mlpack.tar.gz ${mlpack_archive} && \
>> tar -xvzpf mlpack.tar.gz && cd * && mkdir build && \
>> cd build && cmake .. && make -j4 && make install && chown -R
>> mlpack:mlpack /home/mlpack
>>
>> ENV PROJ_WORK_DIR /home/mlpack/build/
>>
>> # Setup environment.
>> ENV LD_LIBRARY_PATH /usr/local/lib/
>> USER mlpack
>> WORKDIR /home/mlpack
>> CMD /bin/bash
>>
>>
>>
>> On 1. Nov 2019, at 12:12, Ryan Birmingham <rainventions at gmail.com> wrote:
>>
>> Hi Marcus,
>>
>> Which scripts are/were used to generate these dockerhub images? Was it
>> https://github.com/mlpack/jenkins-conf/tree/master/Generate%20Dockerfile
>> ? Are we rebuilding the same dockerfiles from
>> https://github.com/mlpack/jenkins-conf/tree/master/Dockerfiles ? Or is
>> this something else entirely?
>>
>> Also, what I'm looking to create or use is a dev container/vm (i.e. a
>> container that can build/test mlpack/ensmallen); maybe that would be a
>> useful tag to add, provided that this setup is useful to people who aren't
>> me :)
>> -Ryan Birmingham
>>
>>
>> On Thu, Oct 31, 2019 at 1:40 PM Marcus Edel <marcus.edel at fu-berlin.de>
>> wrote:
>>
>>> Hello,
>>>
>>> for docker there is
>>> https://cloud.docker.com/repository/docker/mlpack/mlpack/tags which
>>> should
>>> provide a docker image for each release and nightly build as well. I
>>> have to
>>> check why the script stopped working.
>>>
>>> Maybe it makes sense to embed the process into a Jenkins job.
>>>
>>> Also maybe we should think about providing a virtualbox image as well?
>>>
>>> Thanks,
>>> Marcus
>>>
>>> > On 31. Oct 2019, at 16:45, Ryan Curtin <ryan at ratml.org> wrote:
>>> >
>>> > On Thu, Oct 31, 2019 at 11:39:35AM -0400, Ryan Birmingham wrote:
>>> >> Hello everyone,
>>> >>
>>> >> One of the things that I think would be useful to me, at the least,
>>> is a
>>> >> vm/docker/some other thing that I could use as a development
>>> environment.
>>> >> Before I do any work on this, I essentially have two questions: has
>>> anyone
>>> >> else already solved this, and (if not) what would be useful features
>>> to
>>> >> include in a prepackaged dev environment?
>>> >
>>> > Hey Ryan,
>>> >
>>> > Agreed! I think that could be useful. This has been discussed about
>>> > the benchmarks repository:
>>> >
>>> > https://github.com/mlpack/benchmarks/pull/135
>>> >
>>> > But it could definitely be useful for the main mlpack repository too.
>>> >
>>> > If you worked on this, perhaps we could put the Dockerfile in some
>>> > mlpack repository, and then upload it to DockerHub and update our
>>> > documentation? Anyway, just an idea. :)
>>> >
>>> > Hope this helps! And it was cool to run into you at the GSoC mentor
>>> > summit in Munich. :)
>>> >
>>> > Ryan
>>> >
>>> > --
>>> > Ryan Curtin | "Why is it that the landscape is moving... but the
>>> boat is
>>> > ryan at ratml.org | still?" - Train Driver
>>> > _______________________________________________
>>> > mlpack mailing list
>>> > mlpack at lists.mlpack.org
>>> > http://knife.lugatgt.org/cgi-bin/mailman/listinfo/mlpack
>>>
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://knife.lugatgt.org/pipermail/mlpack/attachments/20191104/89d10d49/attachment-0001.html>
More information about the mlpack
mailing list