成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

如何構建Docker Compose文件?

譯文
云計算
Docker Compose是用于定義和運行多容器Docker應用程序的工具。換句話說,如果你要定義一個需要多個Docker容器才能運行的服務,Docker Compose這個工具可能適合你。

【51CTO.com快譯】Docker Compose是用于定義和運行多容器Docker應用程序的工具。換句話說,如果你要定義一個需要多個Docker容器才能運行的服務,Docker Compose這個工具可能適合你。

但你如何使用Docker Compose?一旦安裝了它和Docker守護程序,如何部署那些容器化應用程序?Docker Compose依賴docker-compose.yml文件(反過來,該文件與Dockerfile一起使用)。

如何構建Docker Compose文件?

我將盡量簡單地為你細述這個問題,以便你了解如何自行構建基本的Docker Compose文件。

你需要什么?

你唯一需要的是:

  • 擁有Docker和docker-compose的運行實例的服務器。
  • 屬于Docker組的用戶。

Docker Compose如何工作?

簡而言之:Docker Compose構建一堆應用程序以運行完整的服務。docker-compose.yml文件分幾個部分,每個部分代表一個容器,每個容器與其他容器組合以創建服務。比如說,你可能有一個包含這兩個部分的docker-compose.yml文件:

  • web——應用程序的Web服務器部分。
  • db——應用程序的數據庫服務器部分。

每個部分由不同的組件組成。又由于你可能需要很特定的Web部分,可以指示docker-compose將在Dockerfile中定義Web部分。實際上,就docker-compose而言,你可以包含多個Dockerfiles以構建很復雜的堆棧。不過我們將構建一個很簡單的堆棧,以便輕松入手。

所以,不妨創建包含web和db兩部分的這個docker-compose.yml文件。我們將使用NGINX和MySQL來創建一個輕松用于開發目的的堆棧。

  1. docker-compose.yml文件 

我們要做的第一件事是創建一個新文件。我們將在剛創建的目錄中創建該文件。執行命令mkdir ~/docker-build。使用命令cd ~/docker-build切換到那個剛創建的目錄。一旦進入該目錄,使用以下命令創建新的docker-compose.yml文件:

  1. nano docker-compose.yml 

請記住,這是一個YAML文件,因此格式必須一致(否則構建將失敗)。

先要做的是添加文件標題。在文件頂部,添加以下內容:

  1. version: '3' 

這指示Docker Compose我們在使用該工具的版本3。下一行將指示Docker Compose以下內容將是要部署的服務。這由以下來定義:

  1. services: 

到目前為止,文件是:

  1. version : '3'  
  2. services: 

我們要定義的第一個部分是堆棧的web部分。我們可以用兩行簡單的代碼完成這一步:

  1. web:  
  2. image: nginx 

上面執行的操作是指示Docker Compose使用官方的Nginx映像來部署一個容器。我們沒有為該容器做任何特別的操作。它很基礎。

下一個部分是定義數據庫。這部分來得復雜一點,因為我們要配置必要的參數,數據庫才能正常運行。我們先以此來定義這部分:

  1. db: 

下一步,我們以下列內容指示Docker Compose將MySQL映像用于該數據庫:

  1. image:mysql 

現在我們定義供數據庫使用的外部端口和內部端口。為此,我們將使用默認的MySQL端口,并予以定義:

  1. ports:  
  2. "3306:3306" 

最后我們配置數據庫環境。環境是數據庫的配置選項(密碼、用戶和數據庫名稱)。這部分看起來像這樣:

  1. environment: 
  2.  
  3. - MYSQL_ROOT_PASSWORD=password1  
  4. - MYSQL_USER=user  
  5. - MYSQL_PASSWORD=password2  
  6. - MYSQL_DATABASE=database 

其中:

  • password1是MySQL管理員用戶的密碼。
  • user是新的MySQL用戶。
  • password2是新的MySQL用戶的密碼。
  • database是要使用的數據庫的名稱。

上述每個都將由你來定義。確保使用獨特的強密碼,以確保你的堆棧安全。

把這個文件組合起來看起來就像這樣:

  1. version: '3' 
  2.  
  3. services: 
  4.  
  5. web: 
  6.  
  7. image: nginx 
  8.  
  9. db:  
  10. image: mysql 
  11.  
  12. ports: 
  13. "3306:3306" 
  14.  
  15. environment:  
  16. - MYSQL_ROOT_PASSWORD=password  
  17. - MYSQL_USER=user  
  18. - MYSQL_PASSWORD=password  
  19. - MYSQL_DATABASE=demodb 

記住,文件結構必須一致,所以要小心縮進。

保存并關閉該文件。

用Docker Compose來構建應用程序

我們已構建好了docker-compose.yml文件,是時候構建應用程序了。由于這是很簡單的應用程序,它基本上部署兩個容器:Web服務器和數據庫。如何使用那兩個容器取決于你。當然,你可以開發自己的映像(比如自定義的Nginx和MySQL映像,它們可以無縫協同運行,以創建獨特的服務或應用程序)。在本文中,我們就使用默認映像(為了演示)。

現在,想構建堆棧,請回到終端窗口,確保你在構建目錄中,然后執行命令:

  1. docker-compose up 

上述命令將部署web容器和db容器。如果只運行該命令,容器將以附加模式來部署,那樣不會返回bash提示符。如果你想以分離模式來運行,要執行該命令:

  1. docker-compose up -d 

運行完畢后,你將看到容器ID列了出來(圖A)。

如何構建Docker Compose文件?
圖A:我們的容器在運行

想確保容器在運行,請執行該命令:

  1. docker-compose ps 

你會看到容器的名稱、命令、狀態和端口列了出來(圖B)。

如何構建Docker Compose文件?
圖B:docker-compose ps命令的輸出結果

恭喜你,你剛使用Docker Compose部署了第一個容器“堆棧”。是的,這個例子非常簡單,但它應該讓你開始踏上漫長而充實的旅程。下一回,我們將創建一個更復雜的docker-compose.yml文件,它與Dockerfile一起運行。

原文標題:How to build a Docker Compose file,作者:Jack Wallen

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

責任編輯:未麗燕 來源: 51CTO.com
相關推薦

2022-08-27 15:27:34

LinuxdockerCompose

2019-09-17 08:00:24

DockerCompose命令

2017-05-23 15:53:52

docker服務容器

2022-07-28 15:10:34

UbuntuDocker

2014-08-11 10:15:01

Docker開發環境

2023-06-25 08:12:02

2023-10-11 06:50:32

Oracle數據庫系統

2024-02-20 08:08:43

2022-11-19 09:30:31

開源容器

2023-11-02 08:45:07

2018-05-04 15:18:01

DockerDocker Comp容器

2023-11-06 13:11:22

Docker映像Builkit

2024-03-26 00:00:01

2023-10-10 00:09:14

2021-12-07 06:02:15

Redis Docker運維

2025-01-26 16:57:02

2023-03-26 09:08:36

2022-07-08 22:23:40

DaprRedis分布式

2021-02-23 15:05:55

Docker鏡像開發

2024-01-17 08:01:28

Docker語法命令
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 黄色免费网站在线看 | 亚洲欧美综合精品久久成人 | 久久一 | 午夜欧美a级理论片915影院 | 在线观看亚洲专区 | 欧美一级片在线看 | 狠狠干五月天 | 99福利 | 天天草天天操 | 人人人艹| 黄色在线免费网站 | 91久久久久久久久久久久久 | 亚洲精久| sese视频在线观看 | 免费观看的av毛片的网站 | 91精品国产欧美一区二区 | 精品美女| 亚州精品天堂中文字幕 | 亚洲永久| 成人激情视频网 | 亚洲麻豆 | 人人做人人澡人人爽欧美 | 久久国产欧美日韩精品 | 国产三级电影网站 | 午夜精品一区二区三区免费视频 | 黄网站免费在线观看 | 午夜免费视频 | 七七婷婷婷婷精品国产 | 久久伊人亚洲 | 色频 | 久久99蜜桃综合影院免费观看 | 一级视频在线免费观看 | 精品动漫一区 | 精品欧美 | 可以在线观看av的网站 | 色综合一区二区 | 久久久久久久久一区 | 久草在线青青草 | 日本精品一区二区三区四区 | 国产成人综合一区二区三区 | 男人的天堂在线视频 |