---
# System prepended metadata

title: '**2021_12/15  Docker**'

---

# **2021_12/15  Docker**


# 1. -Kubernetes in minutes:
https://try.digitalocean.com/kubernetes-in-minutes/?utm_campaign=apac_kubernetes_kw_en_cpc&utm_adgroup=kubernetes&_keyword=kubernetes&_device=c&_adposition=&utm_content=conversion&utm_medium=cpc&utm_source=google&gclid=Cj0KCQiAnuGNBhCPARIsACbnLzr_ez6GdHrazUkiQX7bmKu6_-mELhqcTQxSP7juFsSo7wsZF8de3pIaAnlAEALw_wcB

![](https://i.imgur.com/V2dFcOM.png)



# 2.Unit test很重要(單元測試=數學驗算)
![](https://i.imgur.com/LlJzd8B.png)


# 3.強(java)弱(python)型別
*research*
強弱型別表示在電腦科學以及程式設計中，經常把程式語言的型別系統分為強型別和弱型別兩種。這兩個術語並沒有非常明確的定義，但主要用以描述程式語言對於混入不同資料型別的值進行運算時的處理方式。
https://ithelp.ithome.com.tw/articles/10202260


# 4.DevOps
DevOps是一種重視「軟體開發人員」和「IT運維技術人員」之間溝通合作的文化、運動或慣例。透過自動化「軟體交付」和「架構變更」的流程，來使得構建、測試、發布軟體能夠更加地快捷、頻繁和可靠。 傳統的軟體組織將開發、IT運維和品質保障設為各自分離的部門，在這種環境下如何採用新的開發方法，是一個重要的課題。


# 5.IaC
基礎架構程式 (IaC) 可讓企業更有效率地控制雲端環境的變更與組態設定。IaC 採用 DevOps 的作法，讓開發人員與營運人員更密切地合作開發虛擬機器，並建構相關的虛擬網路以及虛擬機器內的應用程式。

命令式或宣告式
使用 IaC 時必須決定的一件事就是要採用命令式或宣告式的自動化方法來進行環境的變更。IaC 本質上比較接近宣告式。命令式與宣告式的差異，一種簡單的理解方式是：前者是指定程式該如何運作，後者是指定程式該完成的目標。

要使用命令式自動化對基礎架構做變更，您要透過指令列介面 (CLI) 來修改雲端設定，首先要從容器內部開始變更，接下來是虛擬機器 (VM)，然後是虛擬私有雲，按照這樣的順序，將所有的變更指令全部寫在一個腳本當中。這份清單會非常詳盡，但如果在變更發布之後又要對很多台機器做組態設定調整，那就必須整個腳本再重新執行一次。

至於採用宣告式自動化方法則是要先設定目標，例如，您無須使用 CLI 來列出執行 VM 組態設定變更的每一道步驟，您只需宣告您要一台配置在網域下的 VM 即可，剩下的就交由自動化工具幫您搞定。宣告式方法可讓您更容易指定您希望自動化工具幫您完成的需求。

可變更或不可變更
組態設定異動是基礎架構任何或所有環節在組態設定上面臨的一大考驗。這樣的情況很容易發生在可變更的基礎架構上。可變更就意味著有可能變動，當基礎架構的某個環節變動時，它很可能會因此與其他的環節不同調。對資安來說很重要的一個原則是，整個基礎架構所套用的組態設定應該一致。

不可變更的基礎架構在部署之後就無法更動，要更動還是可以，但必須回去修改最原始的宣告敘述。等到所有變更都準備好時，所有相關裝置或組態設定再統一變更。從資安的角度而言，一致性有其必要，因為只要有任何一扇門未關閉，駭客就有機會入侵。將每一扇門都確實關閉，那駭客就無法輕易得逞。

DevOps
開發、測試，然後將應用程式部署到營運環境上，通常需要有部分開發人員在營運環境待命，反之亦然。當網路與虛擬機器的組態設定是由一套系統來控制，部署起來就會更順且更快，同理，開發人員可經由一套自動化申請方式來取得容器或虛擬機器，就能讓程式碼維持致的穩定度，進而達到更好的版本控管，也更容易追蹤。


# 6.Git Submodule



# 7.雲端開發(老師推薦)
# *AWS 雲端開發套件
https://aws.amazon.com/tw/cdk/

## h2AWS CloudFormation
https://aws.amazon.com/tw/cloudformation/


# 8.Compose file
https://docs.docker.com/compose/compose-file/


# 9.看容器當前狀態_程式碼
![](https://i.imgur.com/jkJX464.jpg)


# 10.Postman測API
https://accounts.google.com/o/oauth2/v2/auth/oauthchooseaccount?client_id=805864674475-3abs2rivkn7kreou30b8ru8esnti4oih.apps.googleusercontent.com&scope=profile%20email&response_type=code&redirect_uri=https%3A%2F%2Fidentity.getpostman.com%2Fgoogle%2Foauth2%2Fcallback&state=3d0359d4bb4d4fbfa3acf36573bf0904&prompt=select_account&flowName=GeneralOAuthFlow


# 11.Docker 指令
docker-compose down   把容器全刪除


# 12.LAMP
https://zh.wikipedia.org/wiki/LAMP


# 13.Lab4-建置一個WordPress的網站
![](https://i.imgur.com/3Ygn8HX.png)


只需容器名稱，不輸入IP就能連起來
![](https://i.imgur.com/bSpQv9f.png)


-bascion host(只需知道，不須實作)


# 14.itzg/minecraft-server
https://hub.docker.com/r/itzg/minecraft-server



















