Docker Tutorial


  1. 說明
    1. 安裝方式 (WSL2 Backend)
  2. Scenario
    1. WordPress & MySQL
      1. 清除 Volume 資源的方式
    2. OWASP Juice
  3. 參考資料
    1. iThome

Windows 開發者生態系的 Docker 入門介紹,從下載安裝到實際使用。以開發者的觀點探討 Docker 可以為開發流程與應用所帶來的便利與革新;從營運人員的角度探討 Docker 的容器化技術如何使 Infra as Code 以及 MicroServices 如何可能,從而也觸及 Docker 之間交互作用,引導出為什麼我們需要 Kubernetes Orchestration 來達到複雜的管理與調度 😀

Docker logo

說明

Docker Desktop

  • WSL2 Backend (Win Home / Win Pro)
  • HypverV Backend (Win Pro)

Windows Container

  • Windows Server Container (共用核心)
  • HyperV Container (獨立核心、完全隔離)

安裝方式 (WSL2 Backend)

開啟 Windows 子系統 Linux 版Windows Hypervisor 平台虛擬機器平台

使用 Dcoker Desktop 進行安裝



如果切換成 Windows Containers 模式,因為 Windows Home 不支援 HyperV 會出現錯誤,使 Docker Engine 無法啟動。


Scenario

WordPress & MySQL

參考 vc7 所分享筆記的 compose.yml,並且在結合 phpmyadmin

docker-compose.yml

version: '3.3'

services:
   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     environment:
       MYSQL_ROOT_PASSWORD: admin
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: wordpress@

   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     ports:
       - "8000:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: wordpress@

   phpmyadmin:
     image: phpmyadmin/phpmyadmin
     ports:
       - "8080:80"
     depends_on:
       - db
     environment:
       PMA_HOST: db
       PMA_PORT: 3306
volumes:
    db_data:

啟動 docker compose

docker-compose up -d

清除 Volume 資源的方式

docker volume ls
dcoker volume rm wp_db_data
docker volume prune

OWASP Juice

打靶機、練滲透測試不需要大費周章地準備環境了,Docker 起,Image 落,juice-shop 就完成部署了 🙂

docker pull bkimminich/juice-shop
docker run --rm -p 3000:3000 bkimminich/juice-shop

參考資料

Windows容器技術大剖析

Windows 10 Home家用版安裝 Hyper-V 與 Docker

Introducing the Docker Desktop WSL 2 Backend | docker

用 Docker Compose 快速生成一個 WordPress 網站(筆記,無細節說明)

容器初體驗 - 搞個 IIS Container 來部署網站

Windows 和容器 | learn.microsoft

在 WSL 2 上開始使用 Docker 遠端容器 | learn.microsoft

學習 Docker | learn.microsoft

不合理的要求是磨練:Docker 架站

用 Docker 建立不同 Angular CLI 版本的開發環境

時代在變 Docker 要會:台北 Docker 一日入門篇

Docker 基礎介紹與實戰

快速上手 Windows Containers 容器技術 (Docker Taipei)

開發人員不可不知的 Windows Container 容器技術預覽

Windows Container 101: dotNET, Container, Kubernetes

iThome

Container技術三部曲(一)迎接下一個雲端火紅技術Docker

Container技術三部曲(二)不只快,還要更快──臺灣Docker應用案例的啟發

Container三部曲(三)IT架構的新奈米革命:Container OS