


In fact, a Google search for “convert mysql dump file from latin1 to UTF-8” returns dozens of quality answers and guidance. We are not the first team to run into this issue. We would occasionally get exceptions when a customer tried to enter Unicode characters in a field that saved to one of these tables. We had several legacy database tables that were encoded with Latin1. I’ll close with a concrete example of why WSL has been such an advantage. It takes a little tweaking to get everything playing nicely between the WSL shell, the host Windows OS, and our Docker containers, but now I spend my entire workday using a bash shell, and native installations of all our dev tools.
#Docker lamp stack download#
You can download several different flavors from the Microsoft store: Ubuntu, openSUSE, and Fedora. The Windows Subsystem for Linux (WSL) is a young, rough, constantly-improving, and beautiful thing. However, if we run into any issues and need to search for a solution, what environment are most solutions posted for? Bash, probably on Ubuntu. PowerShell technically works for most of these tasks. Daily, we use Composer, Artisan (Laravel), Yarn, Git, and MySQL. We spent a lot of time in the command line for this project. Likewise, arriving at our current tool-chain was also a gradual process. It took a lot of hours to refine that Docker-compose file. The benefits of moving to a container-based deployment just weren’t enough to justify the disruption. However, our current continuous integration (CI) and deployment story is pretty good. We briefly explored containerizing our production environment as well. I’m incredibly excited to work with containerized. I have personally rebuilt my own environment from scratch in about an hour with this approach. dump file into MySQL, and a developer is given a working instance of our production site. Our entire development environment is defined in a docker-compose.yml that looks like this:Īfter that, we just imported a.
#Docker lamp stack trial#
There was a lot of research, a lot of trial and error, and a lot of failure. I don’t want to understate how much work it required. At this point I started digging into Docker. This planted in my mind the idea that there had to be a better way.Īfter a few iterations of development, some roster changes, and environment changes (namely swapping out Apache for Nginx and switching to PHP-FPM), we were feeling some real pain. Hours later, we had a few engineers with (mostly) consistent development environments. Once I had a dev environment set up, configured, and running, I then needed to transfer this knowledge to team members who hadn’t experienced this ritual before. I was going to be doing all of this development on a Windows-based machine, and I had the checklist committed to memory:
#Docker lamp stack software#
I’ve spent many (many, many) hours developing software with these tools. For the past year, instead of working with my customary set of development tools, I’ve been working in the LAMP (Linux, Apache – Nginx, technically –, PHP, and MySQL/MariaDB) technology stack.
