Это не совсем то же самое, но я считаю, что docker
работает, если мне нужна чистая установка для определенных сценариев тестирования - создайте базовый образ и чистую установку perl, запустите контейнер и запустите «что угодно».
Вам потребуется доступ с правами суперпользователя и возможность устанавливать пакеты (например, docker), поэтому он подходит не для каждого варианта использования.
https://buildlogs.centos.org/centos/7/docker/ имеет базовый образ, который можно использовать для создания «чистого» CentOS (или, если честно, использовать любую ОС, какую вы предпочитаете - у большинства есть контейнерные версии)
FROM scratch
ADD CentOS-7-20140625-x86_64-docker_01.img.tar.xz
LABEL name="CentOS Base Image"
CMD ["/bin/bash"]
В рабочем каталоге:
docker build -t mycentos .
Это даст вам очень простое изображение:
Тогда ваш perl dockerfile:
FROM mycentos
COPY local.repo /etc/yum.repos.d/local.repo
RUN yum clean all
RUN yum install --nogpgcheck -y make gcc tar
ADD perl-5.28.1.tar.gz /build/
RUN cd /build/perl-5.28.1 && ./Configure -de
RUN cd /build/perl-5.28.1 && make && make test && make install
COPY MyConfig.pm /root/.cpan/CPAN/MyConfig.pm
RUN cpan install Bundle::CPAN
CMD ["/bin/bash"]
Вы сможете раскрутить это, например, docker run
и вызовите скрипт, используя /usr/local/bin/perl
.
Это не совсем то, что вы просили, но ваш базовый образ может быть запущен и удален по вашему желанию - вы также можете поддерживать образ для нескольких различных комбинаций ОС и perl.