#duh! Pick the base image (this is latest as of May 2020)
FROM php:7.4.5-apache
# Install composer
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
#duh!
RUN apt-get update
Stackoverflow answer link - https://stackoverflow.com/a/2068371/867451
Copied the content for quick reference
Each YouTube video has four generated images. They are predictably formatted as follows:
https://img.youtube.com/vi/<insert-youtube-video-id-here>/0.jpg
https://img.youtube.com/vi/<insert-youtube-video-id-here>/1.jpg
Instead of Illuminate\Http\Request
, use Cake\Http\ServerRequest
Find Request $request
and replace with ServerRequest $request
High level actions
- Create a VM (Virtual Machine) - with minimal hardware specs : probably a version with 1 vCPU and less than (or equal to) 1 GB RAM
- Use Ubuntu as the OS (you can choose any other OS, but you have to make sure that the respective commands for any follow up actions are known and you are well versed with those).
- Enable/configure SSH to access the system
- Clone git repo (Github/Bitbucket/Gitlab etc) - and install any dependencies on the VM
- Configure any additional tools/services that the code is using (DB/PDO/JSON etc)
- Map the IP/generic-url to a domain name (if you don't have a domain, then make sure you sign-up for that - free or paid - choice is yours) - DNS management
Good to have (If not here, then where? If not now, then when?):
Ubuntu 19.10 Date - 2020-03-02 (March 02, 2020) Apache2 - Already installed PHP 7.3 and 7.4 are the only versions currently being supported
Steps to install PHP (as per instructions on https://www.tecmint.com/install-different-php-versions-in-ubuntu/)
sudo apt install php
- This installs PHP 7.3
The more I watch Rick's sessions from 2017, 2018 and 2019, more confused I get - so I guess I'd write it down.
There are 3 core steps (some have more, I want to stick to 3) to create a decent model that works well:
- Understand the usecase + create ERD(list entities and relations)
- Identify the access patterns - R/W workloads, query dimensions and aggregations
- Data modeling - avoid relational patterns, use 1 table(if there aren't any "documents", 1 should be fine)
- R.R.R = Review > Repeat > Review (go on till it makes sense)
This gist is to jump to the DB designing (without explaining the "Why/How DynamoDB" part).
- ERD - Entity Relation Diagram
- Define the Access Patterns
- Design PK/SK
Idea is to have a UI (minimal)
That gets the job done (for now)
Using TailwindCSS (with Dark-mode support)
Configured in CakePHP (mono-repo setup)
Avoiding CORS (again, for now)
Setup of Noter in CakePHP, MySQL and Docker (and other tools) - notes, commands, snippets go here.
Direct branch-URL - https://github.com/konnector-dev/noter/tree/cakephp-mysql
Repo URL - https://github.com/konnector-dev/noter
Branch - cakephp-mysql
Actual code has not started yet and I have been thinking about several ways to accompalish this:
- CakePHP, MySQL - No Vue/TailwindCSS/DynamoDB
- Slim(PHP), Postgres, Vue/TailwindCSS
- Slim(PHP), DynamoDB, Vue/Tailwindcss
Fastest one (for now) would be the first option - more experience, recently worked on this a lot
Taking specific notes from "Noter" development - more on this tomorrow