日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

在Linux的Windows子系统上(WSL)使用Docker(Ubuntu)

發(fā)布時間:2023/12/4 linux 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 在Linux的Windows子系统上(WSL)使用Docker(Ubuntu) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

背景

  平時開發(fā)大部人都是在提供了高效GUI的window下工作,但是真正部署環(huán)境普遍都是在Linux中,所以為了讓開發(fā)環(huán)境和部署環(huán)境統(tǒng)一,我們需要在windows模擬LInux環(huán)境,以前我們可能通過虛擬機的方式實現(xiàn),不過自從微軟擁抱開源更加開發(fā)提供了Linux的Windows子系統(tǒng)(WSL)后,我們又多了一個選擇,通過WSL運行l(wèi)inux程序(WSL比通過虛擬機來運行l(wèi)inux性能更強,耗費資源更小,安裝linux環(huán)境最大只需要200多M)!經(jīng)過幾次調(diào)整WSL(用于Linux的Windows子系統(tǒng),也被稱為Bash for Windows)可以用于Docker for Windows。

  不過令人遺憾的是目前WSL是不支持Docker的守護進程,但您可以使用Docker CLI連接到通過Docker for Windows或您創(chuàng)建的任何其他VM?運行的遠程Docker守護進程

概覽

 docker的架構(gòu)設計分為三個組件:一個客戶端,一個REST API和一個服務器(守護進程):

  • Client :與REST API交互。主要目的是允許用戶連接守護進程。

  • REST API:充當客戶端和服務器之間的接口,實現(xiàn)通信。

  • 守護進程:負責實際管理容器 - 啟動,停止等。守護進程監(jiān)聽來自docker客戶端的API請求。

守護進程與內(nèi)核關系非常密切。今天在Windows中,當您運行Windows Server容器時,守護進程在Windows中運行。當您切換到Linux容器模式時,守護程序?qū)嶋H上在名為Moby Linux VM的虛擬機內(nèi)運行。隨著Docker 即將發(fā)布,您將能夠并行運行Windows Server容器和Linux容器,守護進程將始終作為Windows進程運行。

然而,客戶端不必與守護進程安裝在同一個地方。例如,您可以在開發(fā)計算機上使用本地Docker客戶端與Azure中的Docker進行通信。這使我們可以讓WSL中的客戶端與主機上運行的守護進程通信。

前提:

打開Hyper-V,并打開cpu虛擬化功能

安裝Docker for Windows

安裝WSL

配置Docker for Windows

在常規(guī)設置中,您需要公開沒有TLS的守護進程。此步驟是必需的,以便守護程序在TCP端點上進行偵聽。如果你不這樣做,那么你將無法從WSL連接。

所以為了讓客戶端和docker通信,必須打開以下黃色背景的選項!

您可能還想共享您的驅(qū)動器(土話:盤符)。這一步不是必須的,但如果需要用到某個盤符的文件,建議勾選對應選項,轉(zhuǎn)到“共享驅(qū)動器(Shared Drives)”設置并啟用它。

?配置WSL

我們需要在WSL上安裝Docker客戶端

執(zhí)行命令:apt installdocker.io

?將WSL配置為連接到Docker for Windows

執(zhí)行命令:export DOCKER_HOST=tcp://127.0.0.1:2375

這步驟很重要,例如利用gitlab的runner時,在gitlab-ci.yml中也需要有次命令,runner的鏡像才可連接宿主機Docker進行構(gòu)建作業(yè)!

?現(xiàn)在執(zhí)行docker命令不會再出現(xiàn)以下提示:

但是,該環(huán)境變量只會持續(xù)到會話結(jié)束。每次打開bash時都必須重新設置它。因此,為了避免這種情況,您需要在主目錄中的一個名為.bash_profile或者 .bashrc的文件中設置該變量,

這兩個文件只支持ssh命令終端用vi打開

?

在FileZilla文件訪問軟件是無法找到的

打開這兩個文件中有數(shù)據(jù)的那個并在結(jié)尾處添加

?保存后重新啟動bash控制臺執(zhí)行docker相關命令可以照常執(zhí)行了

?

由于windows10的推出生產(chǎn)力又進一步釋放,絕大部分開發(fā)人員還是繼續(xù)會在windows上進行日常開發(fā),但是linux又是普遍公認的服務器部署首選系統(tǒng),開發(fā)人員有必要了解linux的日常使用,并在linux環(huán)境下進行測試程序的可靠性,wsl無疑為我們簡化了這一過程,告別了使用虛擬機的開銷,相信會讓開發(fā)者更高效的工作



.NET社區(qū)新聞,深度好文,歡迎訪問公眾號文章匯總?http://www.csharpkit.com?


總結(jié)

以上是生活随笔為你收集整理的在Linux的Windows子系统上(WSL)使用Docker(Ubuntu)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。