[Chicago-talk] When to Dockerize a perl program

Alan Mead amead at alanmead.org
Sun Sep 4 16:18:58 PDT 2022

I was curious to see what responses you got. The little I understand 
about docker, it makes it easier for a sysadmin to deploy your 
application because you have set up the environment that you need. From 
that, I assume that Docker is great for sysadmins but maybe not all that 
compelling for the private use of programmers unless it solves a problem 
for you. For example, you want to deploy to diverse environments that 
all support docker but support Perl in different ways. I'm sure there 
are Perl use cases like this. You do have a fair number of dependencies.

I am surprised that your script takes two hours to run. Does that 
include some long compilations?

I worry (perhaps out of ignorance) about the security implications. If 
you depend on a Perl module or a Linux package that has a vulnerability, 
how can Docker (which is designed on stability of am image) possibly 
defend you against security problems? I think the answer is that (1) 
docker (properly configured) may limit the damage to the host and (2) 
the devs who created the docker image are supposed to be continuously 
creating new images to fix security vulnerabilities. If #2 is true, then 
that really makes me not want to ever make my software available using 
docker. I think I'm much better off assuming that the libraries I call 
are being updated on each server where my code is running.


On 9/4/2022 5:13 PM, Richard Reina wrote:
> Hello perl faithful of the WIndy City,
>  I have a perl program that effectively works as an API that I have 
> developed over the years for use for myself and an employee or two 
> that mainly allows us to update company databases and create some file 
> so that they can be emailed. The program depends on about a dozen CPAN 
> perl modules and a few dozen linux packages that are listed below. The 
> installation process is not something that I dread, in fact I've 
> developed another program I call machine_builder.pl 
> <http://machine_builder.pl> that automates most of the installation 
> and configuration so that I can get everything installed and 
> configured on a new machine in about a couple hours. I've played 
> around a bit with Docker in order to run Frigate IVR for my home 
> security cameras and have heard that it may be "the wave of the 
> future". What I am wondering is should I be looking to make my perl 
> API program a Dockerized app for my office or stay the course with my 
> tried and true system of setting up a machine to run my app?
> Perl Modules: Test::More Barcode::Code128 Fatal GD Curses 
> Lingua::EN::Numbers Module::Build Cmenu Date::Manip 
> DateTime::Event::Holiday::US
> Linux Packages: ntp gpm emacs cpanminus alsa alsa-lib alsa-lib-devel 
> obexpushd smartmontools net-tools gcc build-essential setuptool 
> mysql-client nis libmysql++-dev libdbd-mysql-perl cups php5-gd 
> sharutils imagemagick zlibc tetex-base libncurses5 bsdmainutils acpi 
> libcurses-perl enscript libgd-gd2-perl libncurses5-dev perl-tk cl-gd 
> hylafax-client ncftp sox ypbind rpcbind portmap nis perl-DateManip 
> libgd-dev libterm-readkey-perl
> _______________________________________________
> Chicago-talk mailing list
> Chicago-talk at pm.org
> https://mail.pm.org/mailman/listinfo/chicago-talk


Alan D. Mead, Ph.D.
President, Talent Algorithms Inc.

science + technology = better workers


The greatest enemy of knowledge is not ignorance, it is the illusion
of knowledge.

-- Daniel J. Boorstin

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.pm.org/pipermail/chicago-talk/attachments/20220904/d3aa7104/attachment.html>

More information about the Chicago-talk mailing list