This syllabus is a living document! Hold down the SHIFT
key and press Refresh
to get the latest version.
- Course Description
- Prerequisites
- Course Specifics
- Learning Outcomes
- Schedule
- Class Assignments
- Evaluation
- Class Recordings
In this course students will learn the two main flavors of Developer Operations (DevOps), one that uses containers and one that does not. Students will learn the leading container pattern with Docker and explore the pros and cons of containers by implementing them. The course will tie this pattern together with generic patterns of operation, such as environmental design, development controls, and uptime management.
Course Delivery: online | 7 weeks | 14 sessions
Course Credits: 3 units | 37.5 Seat Hours | 75 Total Hours
By the end of this course, you will be able to…
- Build, deploy, and orchestrate that containers in any web-based application.
- Compare and contrast traditional and container-based deployment patterns.
- Demonstrate proficiency for professional DevOps roles.
- Implement and maintain a cloud infrastructure utilizing traditional DevOps techniques.
Course Dates: Wednesday, August 17 - Wednesday, October 5, 2022
Class Times: Monday, Wednesday at 4:00 PM PST - 6:45 PM PST
Class | Date | Topic | |
---|---|---|---|
1 | Aug, 17 | Course Orientation & 🔬 Lab: Scripting in Bash | |
2 | Aug, 22 | How Containers Work | |
3 | Aug, 24 | Domains & DNS | |
4 | Aug, 29 | Dockerizing Web Apps + Dockerizing Your Web App | |
- | Sep, 5 | Docker Compose + 📝 Lab: Review Worksheet: Containers, Orchestration, Optimization | |
5 | Sep, 7 | Domains & Droplets | |
6 | Sep, 12 | Your Personal PaaS | |
7 | Sep, 14 | Alerts + Continuous Integration | |
8 | Sep, 19 | Project Kickoff | |
9 | Sep, 21 | Advanced Container Orchestration Techniques | |
10 | Sep, 26 | Docker Volumes | |
11 | Sep, 28 | NEW: Docker Swarm | |
12 | Oct, 3 | TBA | |
13 | Oct, 5 | Course Review |
To access each tutorial, click the links below. Be sure to complete the exercise in your browser and follow each instruction carefully.
Complete all five tutorials before the midterm:
Name | Description |
---|---|
Tutorial 1: Your First Linux Containers | Explore Docker fundamentals. |
Tutorial 2: Deploy and Manage Multiple Containers | Scale like the pros using Swarm and Compose. |
Tutorial 3: Doing More with Docker Images | Create & share Docker images; examine the layers inside. |
Tutorial 4: Docker Networking Lab | Hands-on practice using key Docker Networking concepts. |
Tutorial 5: Docker Orchestration Lab | Hands-on practice in high-availability techniques. |
Knowledge gained in the tutorials will be evaluated on the Containers, Orchestration, Optimization worksheet as well as participation during the final Course Review.
Gain valuable real-world experience in DevOps through these hands-on activities.
Complete all five challenges to pass the course:
Name | More Info |
---|---|
Challenge 1: Your Own Domain Name | Instructions |
Challenge 2: Connect Your Domain to GitHub Pages | Instructions |
Challenge 3: Dockerize Any Flask Application | Instructions |
Challenge 4: Your First Server | Instructions |
Challenge 5: Compose a Web Application | Instructions |
In your final project, you'll add the following features to an existing codebase of your choosing:
- Develop a
Dockerfile
anddocker-compose.yml
file that successfully deploys any web application or open source project. - Deploy your application's image to your own cloud production server.
- Monitor your application’s uptime using a health check.
- Demonstrate confidence writing and speaking about Docker, DevOps, and deployment topics by summarizing the experience in a blog post.
Review the Requirements Document to learn more about the project, including:
- ⭐️ Project Goals
- 📋 Project Requirements
- 🗓 Deliverables & Due Dates
- 2️⃣ Blog Post: Due Last Day of Class @ 11:59pm
- 3️⃣ Repository: Due Last Day of Class @ 11:59pm
To pass this course, you must:
- Complete all five tutorials listed in the Tutorials section.
- Complete all five DevOps challenges listed in the Challenges section; each submitted on Gradescope when complete.
- URL-based deliverables must return a valid response to earn full credit.
- Docker-based deliverables that successfully build and run to earn full credit.
- Submit a final project on Gradescope and pass according to the rubric.
- Actively participate in class and abide by the attendance policy.
- Make up all classwork from all absences.
All class recordings will be available here no later than 24 hours after the class session. For privacy reasons, please do not share the recordings outside of the ACS student body.