Windows遠(yuǎn)程連接Docker服務(wù)的操作方法
背景
本地開發(fā)了一個SpringBoot項(xiàng)目,想通過Docker部署起來,我本地是Window10系統(tǒng),由于某些原因不能虛擬化并且未安裝Docker-Desktop,所以我在想有沒有辦法本地不需要虛擬化也不需要安裝Docker-Desktop來實(shí)現(xiàn)支持Docker命令遠(yuǎn)程連接到我自己的服務(wù)器上。經(jīng)過搜索以及大佬的指點(diǎn)發(fā)現(xiàn)了一個辦法。那就是通過Docker客戶端遠(yuǎn)程連接服務(wù)器的Docker服務(wù)端。
實(shí)現(xiàn)
Docker客戶端遠(yuǎn)程訪問服務(wù)端
查看Docker服務(wù)端版本
docker version
獲取到Docker服務(wù)端版本為24.0.7。
Docker服務(wù)端允許遠(yuǎn)程訪問
修改docker.service開放遠(yuǎn)程訪問。
# 編輯 vim /lib/systemd/system/docker.service
找到該文件中的
ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock
注釋或刪除改行,替換為如下命令
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
替換之后保存退出,然后重啟Docker服務(wù)
systemctl daemon-reload && systemctl restart docker
在你本地通過瀏覽器訪問http://{服務(wù)器IP}:2375/version
,當(dāng)看到頁面顯示一串JSON時表示已開放遠(yuǎn)程訪問。
下載對應(yīng)版本客戶端
在Windows訪問https://download.docker.com/win/static/stable/x86_64/下載跟服務(wù)端版本一致的客戶端壓縮包。
下載之后解壓到指定文件夾,比如我放在D:\\tools
下。在D:\\tools
下會多出來一個名字為docker
的文件夾,里面有如下圖docker.exe、dockerd.exe、docker-proxy.exe三個文件(docker-compose.exe不用管,后面會講)。
配置環(huán)境變量
在Windows的系統(tǒng)環(huán)境變量中添加一個環(huán)境變量DOCKER_HOST
,值配置為tcp://{IP}:2375
,這個IP
替換為Docker所在服務(wù)器的IP(例如我的tcp://192.168.169.180:2375
)
然后再添加一個環(huán)境變量DockerClient
,值配置為D:\\tools\\docker
,也就是剛剛解壓的目錄,并且在Path中添加該變量(%DockerClient%
),配置該環(huán)境變量后可以在任何位置訪問docker.exe
可執(zhí)行文件。
驗(yàn)證
打開CMD,在任意文件夾下執(zhí)行docker ps
查看是否顯示服務(wù)器上的容器。
Docker-Compose實(shí)現(xiàn)同樣功能查看服務(wù)端docker-compose版本
docker-compose version # Docker Compose version v2.29.2
下載相同版本的docker-compose
訪問https://github.com/docker/compose/releases下載對應(yīng)版本的docker-compose。
下載后存放到docker客戶端所在的目錄D:\\tools\\docker
下,就是在上面看到的docker-compose.exe
(文件名稱是自己改的,下載下來就是上圖的名稱)。
驗(yàn)證
運(yùn)行命令查看是否生效。
docker-compose ps
注意:運(yùn)行docker-compose命令所在的文件夾的名稱需要注意,不能隨便亂取名。我的情況是需要跟服務(wù)器上的當(dāng)前文件夾名稱保持一致。我的服務(wù)器上docker-compose.yml放在/usr/looveh/tw-feedback下,所以在Windows下執(zhí)行docker-compose命令時當(dāng)前目錄的名稱需要為tw-feedback,否則查詢不到容器。
到此這篇關(guān)于Windows遠(yuǎn)程連接Docker服務(wù)的文章就介紹到這了,更多相關(guān)Windows連接Docker服務(wù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Docker Namespace容器隔離的實(shí)現(xiàn)
Namespace是Docker容器中的一種隔離機(jī)制,通過劃分資源獨(dú)立空間,確保容器之間互不干擾,本文主要介紹一下Docker Namespace容器隔離的實(shí)現(xiàn),感興趣的可以了解一下2024-11-11利用Docker搭建Nexus私有倉庫實(shí)現(xiàn)Maven私服
Maven大家應(yīng)該都比較熟了,我這里就用安卓人狂喜的Gradle來演示一下,在build.gradle中編寫腳本即可上傳,接下來通過本文給大家介紹下利用Docker搭建Nexus私有倉庫實(shí)現(xiàn)Maven私服的問題,感興趣的朋友一起看看吧2022-01-01Docker安裝Minio+SpringBoot上傳下載文件方式
本文主要介紹了如何通過Docker安裝Minio并進(jìn)行訪問測試,同時也講解了如何在SpringBoot中上傳文件到Minio,內(nèi)容包含了pom文件引入依賴,application.properties配置,Minio配置,MinioClinet,FileService,FileServiceImpl的配置2024-10-10docker運(yùn)行nginx容器并掛載數(shù)據(jù)卷
本文主要介紹了docker運(yùn)行nginx容器,并通過掛載目錄將容器與宿主機(jī)的數(shù)據(jù)進(jìn)行共享和統(tǒng)一管理,具有一定的參考價值,感興趣的可以了解一下2025-03-03SQL?Server?簡介與?Docker?Compose?部署SQL?Server?容器
SQL?Server?是一個功能強(qiáng)大的關(guān)系型數(shù)據(jù)庫管理系統(tǒng),適用于各種規(guī)模的應(yīng)用程序和數(shù)據(jù)存儲需求,在本文中,我將簡要介紹?SQL?Server?的基本概念,并詳細(xì)闡述如何使用?Docker?Compose?部署?SQL?Server?容器,感興趣的朋友跟隨小編一起看看吧2023-10-10