Docker是什么?
Docker是一種開源的容器化平臺,可以將應(yīng)用程序及其依賴項打包成一個獨立的容器,以便在不同的環(huán)境中運行。它通過使用容器技術(shù),將應(yīng)用程序與底層系統(tǒng)隔離開來,從而實現(xiàn)了更高效、更可靠的應(yīng)用部署和管理。
Docker-Compose是什么?
Docker Compose是Docker官方提供的一個工具,用于定義和運行多個Docker容器的應(yīng)用
。它使用YAML文件來配置應(yīng)用的服務(wù)、網(wǎng)絡(luò)和存儲等方面的設(shè)置,可以方便地管理復(fù)雜的多容器應(yīng)用。
Docker和Docker-Compose的區(qū)別
Docker和Docker-Compose都是用于容器化應(yīng)用的工具,但它們的功能和使用場景有所不同。
-
Docker主要用于創(chuàng)建、運行和管理
單個
容器。它可以將應(yīng)用程序及其依賴項打包成一個獨立的容器,并提供了一套命令行工具來管理容器的生命周期。Docker可以在不同的操作系統(tǒng)和云平臺上運行,提供了一致的開發(fā)和部署環(huán)境。 -
Docker-Compose則更適用于管理
多個
容器的應(yīng)用。它可以通過一個YAML文件來定義應(yīng)用的各個服務(wù),并提供了一套命令行工具來啟動、停止和管理這些服務(wù)。Docker Compose可以方便地管理復(fù)雜的多容器應(yīng)用,例如Web應(yīng)用中的前端、后端、數(shù)據(jù)庫等組件。
一個案例說明兩者的用法:
docker run -itd --name Nginx -p 80:8080 --restart=always nginx
docker run -itd --name MySQL -e MYSQL_ROOT_PASSword=123123 -P 3306:3306 --restart=always mysql
docker run -itd --name redis -P 6237:6237 --restart=always redis
以上docker轉(zhuǎn)化為docker-compose就是
version: '3'
services:
nginx:
image: nginx
contAIner_name: nginx
ports:
- "80:8080"
restart: always
mysql:
image: mysql
container_name: mysql
environment:
MYSQL_ROOT_PASSWORD: "123123"
ports:
- "3306:3306"
restart: always
redis:
image: redis
container_name: redis
ports:
- "6237:6237"
restart: always
docker up -d
通過這個案例大家應(yīng)該都能理解。
安裝
在linux上安裝Docker和Docker-Compose
# 安裝 Docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
systemctl enable --now docker
# 安裝 docker-compose
curl -L https://Github.com/docker/compose/releases/download/2.20.3/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
# 驗證安裝
docker -v
docker-compose -v
# 如失效,請后臺留言更新~
在macOS上安裝Docker和docker-compose
brew install orbstack
在windwos上安裝Docker和docker-compose
建議安裝docker-desktop桌面應(yīng)用
下載地址:https://desktop.docker.com/win/main/amd64/Docker%20Desktop%20Installer.exe
作者寄語
-
關(guān)注、點贊、收藏、轉(zhuǎn)發(fā)、看一看 -
持續(xù)分享各類開源的好項目,有任何問題留言交流。