Docker and Ansible Questions
techlists at phpcoderusa.com
techlists at phpcoderusa.com
Mon Dec 23 16:48:08 MST 2024
Thanks for all this info. I need some time to process it all.
On 2024-12-22 18:21, Snyder, Alexander J wrote:
> Hello!
>
>>> You use Docker, from what I understand.
> --->> I do use Docker in my Homelab, yes. Currently, I have the
> following containers running:
> ------>> My internal "Dashboard" - "Homepage"
> (https://gethomepage.dev/)
> ------>> Docker Update utility - "What's Up Docker"
> (https://getwud.github.io/wud/)
> ------>> Plex Metrics
> (https://docs.linuxserver.io/images/docker-tautulli/)
> ------>> TV Show NZB Client - Sonarr
> (https://docs.linuxserver.io/images/docker-sonarr/)
> ------>> NZB Download Agent - Sabnzb
> (https://docs.linuxserver.io/images/docker-sabnzbd/)
> ------>> Torrent Download Client - Transmission
> (https://docs.linuxserver.io/images/docker-transmission/)
> ------>> Movie NZB Client - Radarr
> (https://docs.linuxserver.io/images/docker-radarr/)
> ------>> Music NZB Client - Lidarr
> (https://docs.linuxserver.io/images/docker-lidarr/)
> ------>> Movie Download Client - Radarr << hallmark-radarr >>, this
> one setup specifically to download Hallmark Channel movies
> ------>> Plex Requests Client - OMBI
> (https://docs.linuxserver.io/images/docker-ombi/)
> ------>> Speedtest.net downloads client and DB trackr -
> Speedtest-Tracker
> (https://docs.linuxserver.io/images/docker-speedtest-tracker/)
>
>>> You are a senior Linux admin, and I assume you are working with
> Ansible
> --->> I am a Senior Automation Engineer working at APS (Arizona Power
> Company). I work exclusively with Ansible and Python. I work within
> the "Ansible Automation Platform", and APS (as well as many (most?)
> Enterprises) are deeply entrenched in the RedHat ecosystem.
>
>>> to automate something that has to do with Linux servers.
> --->> Yes, currently, our entire VM provisioning process is handled
> entirely in Ansible Playbooks -- and for the entirety of 2024, I was
> the lead developer on our effort to Automate the VM Provisioning
> process in Azure. Before our work, it would take the Azure team (two
> people) "about an hour or so" to create a VM ready for production --
> this was an entirely manual process that made consistency very
> difficult from VM to VM. I am very proud to say that we've taken this
> "About an hour" Unicorn process in Azure to a 15-20 minute process
> that creates a production-ready Azure VM (proud papa spouting!).
>
>>> I am a semi-retired old guy who is a PHP developer. I use Ubuntu
> to
>>> create local web servers for testing and development of PHP. I'm a
>>> little rusty since I am just now taking the leap from CentOS to
> Ubuntu
>>> for LAMP web servers. This requires PHP-FPM. I'm also a little
> rusty
>>> with PHP since I have not done any real programming in several
> years.
>
>>> Given my station, please tell me several things:
>
>>> 1) How do I benefit from using Docker?
> --->> My intention to show the Nginx/PHP demo showed that you can
> "ignore" all the non-php-related stuff and still have a solid
> development environment. At a minimum, it would allow you to speed up
> your PHP development because you wouldn't need to "worry" about all
> the naggy L*MP stuff. You could easily spin up a Nginx/PHP container
> (as in my demo), but you could have several containers, each targeting
> a different version of PHP to ensure backward (and forward)
> compatibility, and maybe test different configurations to see what
> benefits your application the best.
>
>>> 2) How do I benefit from using Ansible?
> --->> I use Ansible for all* (most) of my homelab configurations. This
> includes an Ansible Playbook that uses a JINJA Template to configure
> Docker Compose files consistently.
> --->> The Docker Playbook does the following:
> ------>> name: Ensure the directory exists
> ------>> path: "/opt/apps/{{ container_name }}"
> ------>> name: Ensure the Data directory exists
> ------>> path: "/opt/apps/{{ container_name }}/data"
> ------>> name: Ensure the backup directory exists
> ------>> path: "/opt/backup/containers/{{ container_name }}"
> ------>> name: Create the downloads directory
> ------>> path: "/opt/apps/downloads/{{ container_name }}/"
> ------>> name: Create the Compose File (from a JINJA template)
> ------>> dest: "/opt/apps/{{ container_name }}/{{ container_name
> }}-compose.yml"
> ------>> name: Insert block of text in the WhatsUpDocker file so it
> knows to monitor it for updates
>
>>> 3) How would I use Ansible as a PHP developer?
> --->> It could easily create a consistent development environment for
> you, execute a single playbook, and conjure docker containers with all
> your settings. Alternatively, you can set a bare VM and use Ansible to
> configure *EVERYTHING* to get started.
>
>>> 4) What is the learning curve for Docker for someone like me?
> --->> It is just another part of the technical puzzle, so if you
> struggle to onboard new technologies, much of Docker might be hard for
> you. Still, if you're the kind that can spend an afternoon reading a
> manual or watching some "NetworkChuck" videos on YouTube before you
> "get the gist," it'll probably come quickly. I "forced" myself into
> docker in 2023 after being staunch VMWare "a-VM-for-every-appliction."
> I paid $7xx for my own vSphere/vCenter license and was doing that for
> many years. I bought a cheap-refurbished DELL r530 1U server
> specifically to be my "Docker Host" while I worked through the
> trenches of "Figuring out" Docker. It turned out to be extremely
> simple (for me), and within 30 days, I had completely converted from
> my "a-VM-for-every-appliction" mindset over to a
> "container-for-everything" approach.
>
>>> 5) What is the learning curve for Ansible for someone like me?
> --->> So, I think "Ansible" itself is the "easiest-to-onboard"
> automation technology I've worked with. I've worked with Puppet
> (yuk!), Chef (vomit!), and now Ansible (yum!). It is based on YAML,
> which is very simple to get the hang of. I knew nothing of YAML but
> had figured out the basics in a weekend. I've built on "the basics"
> since I started with it in 2020. At its core, Ansible is based on
> Python, which also makes it easy (_I'm a huge fan of Python, and I
> utterly despise and hate "Ruby"_).
>
> I'm happy to help anyone get on board with the basics of Docker and/or
> Ansible. Just let me know!
>
> --
> Thanks,
> Alex.
>
> On Sun, Dec 22, 2024 at 1:13 PM Keith Smith via PLUG-discuss
> <plug-discuss at lists.phxlinux.org> wrote:
>
>> Alexander J Snyder,
>>
>> You use Docker from what I understand.
>>
>> You are a senior Linux admin and I assume you are working with
>> Ansible
>> to automate something to do with Linux servers.
>>
>> I am a semi-retired old guy who is a PHP developer. I use Ubuntu to
>>
>> create local web servers for testing and development of PHP. I'm a
>> little rusty since I am just now taking the leap from CentOS to
>> Ubuntu
>> for LAMP web servers. This requires PHP-FPM. I'm also a little rusty
>>
>> with PHP since I have not done any real programming in several
>> years.
>>
>> Given my station please tell me several things:
>>
>> 1) How do I benefit from using Docker?
>>
>> 2) How do I benefit from using Ansible?
>>
>> 3) How would I use Ansible as a PHP developer?
>>
>> 4) What is the learning curve for Docker for someone like me?
>>
>> 5) What is the learning curve for Ansible for someone like me?
>>
>> Thanks!!
>> Keith
>> ---------------------------------------------------
>> PLUG-discuss mailing list: PLUG-discuss at lists.phxlinux.org
>> To subscribe, unsubscribe, or to change your mail settings:
>> https://lists.phxlinux.org/mailman/listinfo/plug-discuss
More information about the PLUG-discuss
mailing list