Use DOCKER to create an ENVIRONMENT for your OLD DEVICES that will ALWAYS WORK!!

preview_player
Показать описание
Sometimes your PC or PI will receive an update that suddenly results in a device no longer working. Equally, you may buy an older device from eBay or other retailer and find that, since it's so old, it doesn't work with the latest version of the OS you have.

To work around this, you can build a custom runtime environment within a Docker container, suitable for your device where you can then use it successfully.

This video shows you both an unsuccessful and subsequently a successful attempt to do this for a Brother QL-700 label maker.

Oh, and apologies for the video quality being bad this time round. I had incorrect settings in OBS when I was recording. It looked OK as I was going along but then when I went to edit it, I found it was wrong and didn't have time to re-record it!!

Useful info:

Chapters:
00:00 - Intro
01:07 - Titles
01:14 - Like / Subscribe / Notify / Comment
02:16 - Project Intro
03:36 - TRYING to use CUPS driver from Brother (Unsuccessful)
08:31 - Building DesignSpark Python solution
14:23 - Running and testing the container (Successfully)
17:55 - Using the web form to create labels
19:13 - Conclusions
20:23 - Outro
21:53 - Closing titles

Equipment used:
* Canon M100 camera with 13-55mm kit lens
* Shure MV7 mic
* Elgato collapsable green screen
* Neewer GL1 Pro keylight
* Nanlite Pavotube 30C lights
* Original video capture using OBS
* All video editing using Kdenlive
* All image editing using GIMP
Рекомендации по теме
Комментарии
Автор

Only left channel audio is coming thru. 👂

acubley
Автор

Well done detective work getting all the pieces together..

jimsmith
Автор

Thank you. That was much easier than I would have expected You RoCk.

ovalwingnut
Автор

Good idea to use older tech on current systems, couple of things that I thought of when watching.
Could be expanded in so many ways like watching a shared folder for incoming files, turn them into a Postscript file and printing.
If you push the created image to Docker or Github container registry you don't have to worry about building it again later when libraries etc have moved on, it will always be available at the versions available during the build.
Building image with Python 3.12, you don't need to do that on the target Pi Zero, you could build the image on a more powerful Pi, push it to a registry and then pull it down to the Pi Zero.

AlastairMontgomery
Автор

Thanks for the video! I don't use a label printer but immediately thought about some other hardware that I always fear will not be supported on linux forever. Never thought about Docker images to preserve old os versions though. Cool idea!👍

Rudirudel
Автор

First, there's a lot of really good info here - Thank you for making this video! I learned a couple of Docker tricks I hadn't known. But, as you mentioned, that was harder than it needed to be UNLESS you need to use that specific QL Designer software. To simply use the QL-700 itself, no specific driver is needed. Here's what I did with my QL-700: Installed the current version of Raspberry Pi OS on my Pi4, plugged in the printer, opened Libre Office. Created a label. Done. That said, my method does require a monitor etc. However, one could just as easily set up a Pi as a generic print server, and share the QL-700 that way.

billbliss
Автор

Great, easily digestable, video using Docker.

As you say the really valuable bit here is being able to make the docker image now whilst all the repos and source code is easily avalible then simply only needing to store the docker image (and backups etc) and without fail you will always be able to get it to work no matter if the Sd card fails, the pi hardware is replaced etc..

Its all well and good being able to build a legacy environment now, but not so much a given in 12 months or 24 months time.

Also as you only expose the exact ports you need to do get an element of 'isolation' from the old environment so you dont have the risk of super old OSes running on your network (albeit less of a 'risk' to a normal home user with an ISP modem that by and large defualts to blocking all inbound traffic - although these days malware aimed at 'random joe' is more likely with an eye to adding devices to a botnet, so again isolation of an old OS environment rather than running it from Sd card does somewhat assist)

Thats_Mr_Random_Person_to_you
Автор

Thanks for sharing your knowledge, IT Networking enthusiast here and dedicated SBC fan but first love was Raspberry Pi

chrispple
Автор

Great video! I would love to see more action with Docker and older hardware. I think there is a big calling for businesses, not to mention keeping things out of the landfill!

shawnlowe
Автор

Nice one, Jeff. So you could presumably use this technique to build and deploy the container onto a NAS or other Docker supporting device. Thanks for sharing in such an easy to follow way.

LeeOades
Автор

Y'know, this gave me ideas for other specific purpose things to be done with Docker I didn't really understand when I was working on other projects. Docker has a couple of languages all its own and can seem pretty intimidating if you don't know how it all works. I sort of have some ideas now, just enough that I'm starting to be comfortable with it, and … yeah, it would've done a lot to make life easier dealing with some retro hardware. Not even just old devices, but like you're lucky if you have 8 color graphics on your computer old. Docker would be a great way to get a vintage Appletalk server running, for example.

knghtbrd
Автор

One possible way to slim down the container is to use a multistage build. Build-essentials and the dev libraries are installed into a builder. The Python lib can be zipped up and copied into a smaller container that only has your printer frontend.

coredog
Автор

Great demo, Brother providing python info, positive, the lazy me would have just used the provided old raspbian image, sdcard for it would be stored with the printer.

jyvben
Автор

What I don't fully grasp is why you run a docker pi image, on a pi. Why not just configure the pi itself? I know you said to freeze the software versions but that seems to me to be something one can overcome. What am I missing? I love docker to have a 'contained' and 'tamed' environment.

dennisdecoene
Автор

Can you try installing a driver for xerox printer in the docker image?

DamjanDimitrioski
Автор

I have this exact label printer and have been looking for a way to put it back in use. I also want to network my non-networkable HP 1020 laserjet that I don't want to keep an old win7 laptop running as a print server...

Chef_PC
Автор

Nice! That's pretty neat to use docker with this printer. I looked on Amazon and noticed this model Brother QL-800 label maker (newer) is cheaper than the QL-700 so wondering if it'll work with it?

Darkk
Автор

I must say that I find Docker pretty complicated, but I think this seems like a good way to use containers. Can anyone recommend a good book on Docker?

daveys
Автор

Brother printers often have a setting to print or not to print when something is sent raw to them - maybe cups would have worked if you fiddle with the settings - or sometimes they only work from some drivers over network not USB

hew
Автор

Your fake lab in the background looks very Hollywood high tech

FLORIDIANMILLIONAIRE