給 PHP 開發者的 Docker 文件(二)

更新於 發佈於 閱讀時間約 2 分鐘
圖片來自 Docker
(本文譯自〈Docker for PHP Developers〉)

哈囉!Docker

Docker 是一個包含許多技術的概括性詞彙,它提供的工具可以幫助你把某個應用(application)的基礎架構(infrastructure)分離成數個邏輯模塊(容器),你可以只組合某些必要的模塊去把應用的基礎架構建構成可移植(portable)的,這樣的基礎架構可以於開發(development)、上線(staging)、生產(production)環境中遷移。

什麼是 Docker 容器(Container)?

一個容器指的是一個大型應用內的某個單一的服務。舉例來說,假設我們正在建構一個 PHP 應用,那麼我們需要一個網頁伺服器(如 nginx);我們也需要一個應用伺服器(如 PHP-FPM);我們還需要一個資料庫伺服器(如 MySQL)。也就是說我們的應用需要三個這樣的獨立的服務:網頁伺服器、應用伺服器、資料庫伺服器,這三樣服務都可以被分離成各自專屬的 Docker 容器,只要我們把這三個容器連結起來,我們就有了一個完整的應用。

什麼是 Docker 映像(Image)?

把某個應用分成數個容器看來像是吃力不討好的工作,至少我以往是這麼認為的,不過實際上並不然,首先,容器實際上是映像的實例(instance),若把 Docker 的映像想像成 PHP 的類別(class),就像 PHP 類別可以讓我們實例化(instantiate)出許多獨立的物件(object)一樣,Docker 的映像也可以實例化出許多獨立的 Docker 容器。例如我們可以拿一個 PHP-FPM Docker 映像去為我們的每個應用實例化出它們的獨立的 PHP-FPM 容器。
我們也可以自製 Docker 映像,不過還是從 Docker Hub 去找適合的 Docker 映像會比較簡單些,像是我們會抓 sameersbn/mysql 這個 Docker 映像來建立 MySQL 資料庫容器。如果別人已經建好了能幫我們解決問題的 Docker 映像,為什麼還要重新發明輪子呢
(待續…)
為什麼會看到廣告
avatar-img
15會員
64內容數
Where I go and what I get.
留言0
查看全部
avatar-img
發表第一個留言支持創作者!
Leon的沙龍 的其他內容
圖片來自 Vincent PONTIER (本文譯自〈Docker for PHP Developers〉) 數年以來我都用 Vagarant  管理本地的開發伺服器,根據 Vagrant 網站所述,Vagrant  是用於創建、組態輕量的(light-weight)、可重製的(reproducib
圖片來自 josemdelaa 本文試圖從眾多電腦廠商的電力方案中,找出最佳解。 首先,我們必須先思考,消費者要的是什麼,我們當然可以天馬行空的想著超大範圍的無線供電方案之類的夢想,不過從務實考量,在現有的科技水平下,以筆電這樣的行動應用,除了續航力,重量這檔事顯然也必須被納入考量,任何人都可以理解
本文已搬家,請點此前往最新版本。 不過,Linux 的疊床架屋式架構又再度表露,Preferred Applications、gnome-www-browser、x-www-browser 這三者根本就同樣目的的東西,不知道弄成三個設定是怎樣?!
圖片來自 timwesterhoff 今日在朋友分享給我的 buzz 中有一則〈如何將 NB 的無線網路變成可分享 Wi-Fi 的 AP 模式 (Ad-Hoc)〉,不過,其實這世界上還有更平易近人的做法,並且不限於透過單一界面,每一台 Mac 上的基本配備—WiFi、乙太網路 、藍牙,只要其中一種界
圖片來自 William Warby 一般來說,資料的備份策略從規模的小到大,我們可以有幾種選擇,如果只是小規模的、輕量的,通常是燒成備份光碟,操作方式也多是手動的,然而隨著年紀的增長  Orz,資料也跟著增長,當資料量大到某種規模,手動備份就變得沒效率且不實際,這時我們就需要專門的備份軟體來自動的
騎單車上班,是一種挑戰,也是一種放鬆,更是一種體驗。
圖片來自 Vincent PONTIER (本文譯自〈Docker for PHP Developers〉) 數年以來我都用 Vagarant  管理本地的開發伺服器,根據 Vagrant 網站所述,Vagrant  是用於創建、組態輕量的(light-weight)、可重製的(reproducib
圖片來自 josemdelaa 本文試圖從眾多電腦廠商的電力方案中,找出最佳解。 首先,我們必須先思考,消費者要的是什麼,我們當然可以天馬行空的想著超大範圍的無線供電方案之類的夢想,不過從務實考量,在現有的科技水平下,以筆電這樣的行動應用,除了續航力,重量這檔事顯然也必須被納入考量,任何人都可以理解
本文已搬家,請點此前往最新版本。 不過,Linux 的疊床架屋式架構又再度表露,Preferred Applications、gnome-www-browser、x-www-browser 這三者根本就同樣目的的東西,不知道弄成三個設定是怎樣?!
圖片來自 timwesterhoff 今日在朋友分享給我的 buzz 中有一則〈如何將 NB 的無線網路變成可分享 Wi-Fi 的 AP 模式 (Ad-Hoc)〉,不過,其實這世界上還有更平易近人的做法,並且不限於透過單一界面,每一台 Mac 上的基本配備—WiFi、乙太網路 、藍牙,只要其中一種界
圖片來自 William Warby 一般來說,資料的備份策略從規模的小到大,我們可以有幾種選擇,如果只是小規模的、輕量的,通常是燒成備份光碟,操作方式也多是手動的,然而隨著年紀的增長  Orz,資料也跟著增長,當資料量大到某種規模,手動備份就變得沒效率且不實際,這時我們就需要專門的備份軟體來自動的
騎單車上班,是一種挑戰,也是一種放鬆,更是一種體驗。
你可能也想看
Google News 追蹤
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
本文介紹了 Docker 的基本概念,包括 Docker Image、Docker Container、Dockerfile、Docker Compose 及其應用情境,如開發與測試環境、微服務架構和持續整合/持續部署。瞭解這些內容能幫助開發人員更有效地利用 Docker 進行應用程式的部署和管理。
Thumbnail
本文介紹了 Docker 的基礎概念,以及在軟體工程環境中的運用。藉由 Docker 的容器化技術和映像檔技術,能夠實現開發和生產環境的一致性,並且支持負載平衡和無縫更新。此外,也提到了 Kubernetes 和 Docker Swarm 這兩個重要工具的用途和適用對象。
Docker是一種容器化技術,可以將應用程式及相關依賴項目打包到一個容器中。這篇文章介紹了安裝Docker的步驟,以及幾個比較偏向使用者的應用程式。
Thumbnail
前言 上次講到 Dockerfile、DockerImage、Docker Container 他們之間的關係,今天我們要來熟悉 Docker Image 如何使用,教你如何抓取雲端上的 Docker Image, Docker Image 下載來源 當我們今天要要使用 Docker Imag
Thumbnail
前言 上次我們初步體驗 Docker 快速佈署能力,今天我們要來講解 Dockerfile、Docker Image 與 Docker Container 這些常見的名詞,我們來了解在我們佈署的時候做哪些事情 Docker 佈署流程 首先看到如下圖上半部,在我們一個完整的佈署流程,我們會先將我
Thumbnail
前言 大家好在先前我們講了什麼是 Docker,Docker 好處有什麼以及怎麼安裝 Docker,今天我們要來開始初體驗 Docker 容器,使用後您會發現 Docker 非常的方便快速 Docker Hub 介紹 首先在開始學怎麼抓取 Docker Image 之前,我們要先來介紹 Doc
Thumbnail
前言 上次我們講到 Docker 的功用與好處,今天我們要在講解,如何安裝 Docker 這個容器,讓我們在之後的教學應用更好的實作與練習,現在讓我們開始吧 Docker Engine 與 Docker Desktop 首先在講解怎麼安裝 Docker 時,我們先講解 Docker Engin
Thumbnail
前言 上次我們對 Docker 架構進行了講解,今天我們來講解 Docker 的好處,他到底可以幫助我們什麼事情 ? 為什麼 Docker 如此受人喜歡 ? 現在就來講述 Docker 有什麼好處 跨平台 Docker 可以確保在不同的作業系統是可運作的,可減少機器運作的問題 版本控制 打
Thumbnail
前言 上次我們針對 Docker 這樣容器化技術做了一點介紹,今天我們要來講解 Docker 架構,你是否發現在每次程式上伺服器的流程很麻煩呢 ? 是否發現你寫的程式在別的作業系統不能用呢 ? 如果你遇到這些問題,Docker 都可以幫助你解決這些問題 Docker 架構 在 Docker 這
Thumbnail
前言 大家好我們今天要來教 Docker 這項技術,什麼是 Docker ? Docker 可以幫助我們做什麼事情 ? Docker 是一項容器化技術,他可以降低我們在佈署 App 時,讓我們可以有效的分配作業系統資源,降低佈署作業成本,現在讓我們來了解 Docker 要解決的問題 傳統佈署遇
Thumbnail
嘿,大家新年快樂~ 新年大家都在做什麼呢? 跨年夜的我趕工製作某個外包設計案,在工作告一段落時趕上倒數。 然後和兩個小孩過了一個忙亂的元旦。在深夜時刻,看到朋友傳來的解籤網站,興致勃勃熬夜體驗了一下,覺得非常好玩,或許有人玩過了,但還是想寫上來分享紀錄一下~
Thumbnail
本文介紹了 Docker 的基本概念,包括 Docker Image、Docker Container、Dockerfile、Docker Compose 及其應用情境,如開發與測試環境、微服務架構和持續整合/持續部署。瞭解這些內容能幫助開發人員更有效地利用 Docker 進行應用程式的部署和管理。
Thumbnail
本文介紹了 Docker 的基礎概念,以及在軟體工程環境中的運用。藉由 Docker 的容器化技術和映像檔技術,能夠實現開發和生產環境的一致性,並且支持負載平衡和無縫更新。此外,也提到了 Kubernetes 和 Docker Swarm 這兩個重要工具的用途和適用對象。
Docker是一種容器化技術,可以將應用程式及相關依賴項目打包到一個容器中。這篇文章介紹了安裝Docker的步驟,以及幾個比較偏向使用者的應用程式。
Thumbnail
前言 上次講到 Dockerfile、DockerImage、Docker Container 他們之間的關係,今天我們要來熟悉 Docker Image 如何使用,教你如何抓取雲端上的 Docker Image, Docker Image 下載來源 當我們今天要要使用 Docker Imag
Thumbnail
前言 上次我們初步體驗 Docker 快速佈署能力,今天我們要來講解 Dockerfile、Docker Image 與 Docker Container 這些常見的名詞,我們來了解在我們佈署的時候做哪些事情 Docker 佈署流程 首先看到如下圖上半部,在我們一個完整的佈署流程,我們會先將我
Thumbnail
前言 大家好在先前我們講了什麼是 Docker,Docker 好處有什麼以及怎麼安裝 Docker,今天我們要來開始初體驗 Docker 容器,使用後您會發現 Docker 非常的方便快速 Docker Hub 介紹 首先在開始學怎麼抓取 Docker Image 之前,我們要先來介紹 Doc
Thumbnail
前言 上次我們講到 Docker 的功用與好處,今天我們要在講解,如何安裝 Docker 這個容器,讓我們在之後的教學應用更好的實作與練習,現在讓我們開始吧 Docker Engine 與 Docker Desktop 首先在講解怎麼安裝 Docker 時,我們先講解 Docker Engin
Thumbnail
前言 上次我們對 Docker 架構進行了講解,今天我們來講解 Docker 的好處,他到底可以幫助我們什麼事情 ? 為什麼 Docker 如此受人喜歡 ? 現在就來講述 Docker 有什麼好處 跨平台 Docker 可以確保在不同的作業系統是可運作的,可減少機器運作的問題 版本控制 打
Thumbnail
前言 上次我們針對 Docker 這樣容器化技術做了一點介紹,今天我們要來講解 Docker 架構,你是否發現在每次程式上伺服器的流程很麻煩呢 ? 是否發現你寫的程式在別的作業系統不能用呢 ? 如果你遇到這些問題,Docker 都可以幫助你解決這些問題 Docker 架構 在 Docker 這
Thumbnail
前言 大家好我們今天要來教 Docker 這項技術,什麼是 Docker ? Docker 可以幫助我們做什麼事情 ? Docker 是一項容器化技術,他可以降低我們在佈署 App 時,讓我們可以有效的分配作業系統資源,降低佈署作業成本,現在讓我們來了解 Docker 要解決的問題 傳統佈署遇