Learn what it means to become a full-stack engineer! If you’re going to be a well rounded engineer, it’s important you understand what is happening on the server-side. In this course, you'll learn to move back and forth between UI and the back-end through the command line, SSH, nginx, docker containers, server security, HTTP/2, HTTP/3 and more.
Overview
Syllabus
- Introduction
- Why Full Stack
- Command Line Overview
- Command Line Practice
- Shells
- Understanding the Internet
- IP Addresses & Protocols
- Domain Name System
- Trace Routes Practice
- Packets
- Understanding Net Neutrality
- VIM Overview & Modes
- VIM Practice
- Server Exercise
- Server Solution
- Data Centers & the Cloud
- Virtual Private Server Setup
- Operating Systems
- SSH
- SSH Key Practice
- Connecting to the Server
- Buying a Domain Name
- Domain Setup
- Server Setup
- User Setup
- Setting User Permissions
- Disabling the Root User
- Nginx Overview
- Nginx Configuration
- Node.js Configuration
- Application Architecture
- Application Setup
- Proxy Passing Traffic
- Process Manager
- Version Control with git
- Server Setup Recap
- Standard Streams & Redirection
- Finding Files & Directories
- Bash History Tips
- Searching File Contents with grep & zgrep
- Nginx Redirect
- Nginx Subdomain
- Nginx File Compression
- Why Security
- Read Auth.log
- Security Checklist
- Unattended Upgrades
- Security Ethics
- Firewalls
- Ports
- Uncomplicated Firewall
- Permissions
- Upgrade Node.js
- Defining HTTP
- HTTP Headers & Cookies
- Custom Header & Status Code Exercise
- Custom Header & Status Code Solution
- HTTPS
- Adding HTTPS to NGINX
- HTTP/2
- HTTP/3
- Containers & Microservices
- Docker & Orchestration
- Load Balancers
- Deployment
- Files & Databases Overview
- Database Types
- Redis
- WebSockets
- Chat Bot: Exercise
- Chat Bot: Solution
- Wrapping Up
Taught by
Jem Young