Khoá học Docker cho lập trình viên

Docker là một nền tảng cho developers và sysadmin để develop, deploy và run application với container. Nó cho phép tạo các môi trường độc lập và tách biệt để khởi chạy và phát triển ứng dụng và môi trường này được gọi là container. Khi cần deploy lên bất kỳ server nào chỉ cần run container của Docker thì application của bạn sẽ được khởi chạy ngay lập tức.

Học miễn phí ngay

Lợi ích của Docker?

Không như máy ảo Docker start và stop chỉ trong vài giây. Bạn có thể khởi chạy container trên mỗi hệ thống mà bạn muốn. Container có thể build và loại bỏ nhanh hơn máy ảo. Dễ dàng thiết lập môi trường làm việc. Chỉ cần config 1 lần duy nhất và không bao giờ phải cài đặt lại các dependencies.

Nếu bạn thay đổi máy hoặc có người mới tham gia vào project thì bạn chỉ cần lấy config đó và đưa cho họ. Nó giữ cho word-space của bạn sạch sẽ hơn khi bạn xóa môi trường mà ảnh hưởng đến các phần khác.

Đối tượng tham gia phù hợp

  • Các bạn lập trình viên, đã có kiến thức và kinh nghiệm trong lĩnh vực lập trình
  • Các bạn đang làm lập trình viên, muốn học thêm về DevOps
  • Các bạn đang làm DevOps, muốn hệ thống hoá lại kiến thức

Docker Roadmap

Step-by-step guide to learning Docker in 2024

Phần I

1. Introduction
  • What are Containers?
  • Why do we need Containers?
  • Bare Metal vs VMs vs Containers
  • Docker and OCI
2. Underlying Technologies
  • Namespaces
  • cgroups
  • Union Filesystems
3. Installation / Setup
  • Docker Desktop ( Win / Mac / Linux)
  • Docker Engine ( Linux )
5. Data Persistence
  • Ephemeral container filesystem
  • Volume Mounts
  • Bind Mounts
6. Using 3rd Party Container Images
  • Databases
  • Interactive Test Environments
  • Command Line Utilities
7. Building Container Images
  • Dockerfiles
  • Efficient layer caching
  • Image size and security

Phần II

8. Container Registries
  • Dockerhub
  • Others (ghcr, ecr, gcr, act, etc)
  • Image Tagging Best Practices
9. Running Containers
  • docker run
  • docker-compose
  • Runtime Configuration Options
10. Container Security
  • Image Security
  • Runtime Security
11. Docker CLI
  • Images
  • Containers
  • Volumes
  • Networks
12. Developer Experience
  • Hot Reloading
  • Debuggers
  • Tests
  • Continuous Integration
13. Deploying Containers

Phần III

14. DevOps Roadmap

Continue Learning with following relevant tracks

15. Backend Roadmap

Continue Learning with following relevant tracks

DockerFind the detailed version of this roadmapalong with resources and other roadmapshttps://roadmap.shIntroductionLinux FundamentalsPrerequisitesPackage ManagersUsers / Groups PermissionsShell commandsShell scriptingWeb DevelopmentProgramming LanguagesApplication ArchitectureWhat are Containers?Why do we need Containers?Bare Metal vs VMs vs ContainersDocker and OCIUnderlying TechnologiesRoadmap was made in partnershipwithSid Palas. Checkout his freecourse covering this topic in depth.NamespacescgroupsUnion FilesystemsJust get the basic idea of these.Installation / SetupDocker Desktop ( Win / Mac / Linux)Docker Engine ( Linux )Data PersistenceEphemeral container filesystemVolume MountsBind MountsUsing 3rd Party Container ImagesBasics of DockerDatabasesInteractive Test EnvironmentsCommand Line UtilitiesBuilding Container ImagesDockerfilesEfficient layer cachingImage size and securityContainer RegistriesDockerhubOthers (ghcr, ecr, gcr, act, etc)Image Tagging Best PracticesRunning Containersdocker rundocker composeRuntime Configuration OptionsContainer SecurityImage SecurityRuntime SecurityDocker CLIImagesContainersVolumesNetworksDeveloper ExperienceHot ReloadingDebuggersTestsContinuous IntegrationDeploying ContainersPaaS OptionsKubernetesDocker SwarmNomadContinue Learning with following relevant tracksDevOps RoadmapBackend RoadmapKubernetes RoadmapDevOps RoadmapBackend Roadmap

Tất cả khoá học tại Sigma Academy