Drupal 8 via Composer with Drush and Bootstrap
This weekend, in addition to seeing Storm Large belt out Cole Porter and Edith Piaf songs with the full San Francisco Symphony for their tribute to Moulin Rouge, with My Friend Jeff, we shared barracuda sashimi at Otoro in Hayes Valley. It was a sharracuda.
However, I also:
- Added a Let's Encrypt certificate to this server for https [note: update both apache config files, for ports 443 (https) and 80 (http).]
- Installed Composer, globally, then attempted to install Drupal 8 from a template with Composer (which was confusing as hell for many hours)
- Used Composer to install Drupal core into the directory I wanted it to be installed in. Sounds simple right? That took up the majority of my weekend.
- Increased the memory on my server bc Composer is a little hussy who eats a lot of memory when doing her work.
- Installed drush globally, tried to use the drush shim thing to make it easy to use just drush as a command and that also took several hours before I gave up and installed it locally with drupal via composer as a dependency for that project specifically because really, I'm the only one on this machine and I'm only using it within this project, so there it is.
- Updated my .bash_profile with the crazy long but whatever path to drush so I can type just drush to run drush commands.
- Installed a bunch of dependencies for PHP
- Enabled mod_rewrite for Clean URLs
- Restarted Apache about 800x
- Created a database for my Drupal 8 install; dropped that database and created a new one when I finally got my Drupal core install in the correct place.
- Made a nice dbuser for Drupal and gave her all the permissions.
- Created my settings.php and my files directory and chmod them so they could be set up during core install, then chmod them back so nobody does anything impertinent with them.
- Installed Bootstrap with drush after AWHILE of trying to do it with Composer, and just, in the end, being like F you Composer. F you madly.
- Cleared the motherhumping cache with drush because I can!
Probably should have read that first, but honestly, without two days of feeling painfully bad about myself at how confused and frustrated I got trying to make my way through this process, it would not have been illuminating in the way it is now. Now I read it and go, Ohhhhh, I see, duh. But at first, I read it and mutter, "whueh?"
I use Digital Ocean for hosting because they let me play mad queen with all the servers I can pay for, and I get to do All The Things! However, I have to do all the things. But it's ok, because they have some of the best documentation I've ever seen. It's so simple, clear, and tenderly holding my hand as we wander through the dark and stormy night of server administration and web development.
Drupal documentation... is not this way. The latest is much improved over Drupal 7's documentation, and now even most of the links stay in the right version of docs. Good job everyone! I don't mean to complain, just give feedback. I know it's a labor of love, well, money for many, but love for so many more. One of these days I will contribute something of substance. I'm sure it will be terrible, but gotta start somewhere.
Next up: Install Compass and Sass and make my CSS all sassy. Start theming like design matters to me. Learn what Twig and yml is all about... * wince * - yeah, it's that bad. What can I say, I've been busy being paid to manage Drupal 7 sites for the past six years. Not always a lot of extra time to learn a whole new system. But now, I'm making the time.