環(huán)境:
創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比拜泉網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式拜泉網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋拜泉地區(qū)。費(fèi)用合理售后完善,十多年實(shí)體公司更值得信賴。角色 | 機(jī)器名稱 | 操作系統(tǒng) | IP | 備注 |
Mater | Web30 | Windows Server 2016 GUI | 192.168.2.30 | 安裝最新推薦補(bǔ)丁 |
Node | Web31 | Windows Server 2016 Core | 192.168.2.31 | 安裝最新推薦補(bǔ)丁 |
Node | Web32 | Windows Server 2016 Core | 192.168.2.32 | 安裝最新推薦補(bǔ)丁 |
第一坑:Windows Server 2016 Core
1.操作系統(tǒng)分區(qū)坑
由于我們使用的Windows鏡像都是基于microsoft/windowsservercore大小都在10G左右,還需要安裝IIS、aspnet等等,另外如果涉及到鏡像導(dǎo)出也會占用C盤空間,如果是做Docker的話建議C盤空間不小于60G,或者干脆只分C盤。
踩坑解決辦法:在硬盤還有大量富余空間的情況下,可采用掛載文件夾的形式,掛載C:\ProgramData\docker\windowsfilter文件夾
2.命令行如何設(shè)置機(jī)器IP及機(jī)器名稱及開啟遠(yuǎn)程桌面
在CMD命令提示符下執(zhí)行sconfig即可,建議開啟遠(yuǎn)程桌面方面命令輸入
3.安裝Docker之前一定需要安裝最新的Windows補(bǔ)丁
方法:sconfig--->6)下載并安裝更新--->R)僅搜索推薦的更新---->A)安裝所有
4.文件如何復(fù)制到Windows Server Core下,在命令行下
打開可寫共享
cd \
mkdir share
net share share=c:\share /grant:everyone,full
連接共享
net use z: \\192.168.2.30\share password /user:administrator
于是就映射共享到Z盤,進(jìn)入Z盤即可操作文件
刪除共享
net share c:\share /del /y
5.在Windows命令行如何查看文件
type filename.txt
追加文件
echo 127.0.0.1 web30 >>\windows\system32\drivers\etc\hosts
6.查看Windows進(jìn)程
tasklist
7.殺死進(jìn)程
tskill
第二坑:Windows 2016原生Docker
1.Windows安裝Docker
在命令提示符出入powershell,
Install-Module -Name DockerMsftProvider -Repository PSGallery -Force Install-Package -Name docker -ProviderName DockerMsftProvider如果第二部提示未安裝補(bǔ)丁,則需要安裝最新Windows補(bǔ)丁,輸入sconfig第6步
安裝完成之后重啟服務(wù)器
2.配置所有服務(wù)器的防火墻規(guī)則
TCP 端口 2377 用于群集管理通信
TCP 和 UDP 端口 7946 用于節(jié)點(diǎn)間通信
TCP 和 UDP 端口 4789 用于覆蓋網(wǎng)絡(luò)通信
netsh advfirewall firewall add rule name="swm 2377" dir=in action=allow protocol=TCP localport=2377 netsh advfirewall firewall add rule name="swm 7946" dir=in action=allow protocol=TCP localport=7946 netsh advfirewall firewall add rule name="swm 7946udp" dir=in action=allow protocol=UDP localport=7946 netsh advfirewall firewall add rule name="swm 4789" dir=in action=allow protocol=TCP localport=4789 netsh advfirewall firewall add rule name="swm 4789udp" dir=in action=allow protocol=UDP localport=47893.初始化群集模式
在Master上執(zhí)行
C:\> docker swarm init --advertise-addr=192.168.2.30 --listen-addr 192.168.2.30:2377坑:在Linux上執(zhí)行docker swarm init即可初始化集群,但是在Windows上會卡住不動,在windows上需要指定IP及端口
4.加入集群(在Web31和Web32執(zhí)行)
在上面提示輸入
docker swarm join \ --token SWMTKN-1-1lbjx00s1qsjbjfuoq92f6d95mf41arbhwbkkigmo1smjqs38r-8i0bdakwhc3lvbbog8fnmvgmw \ 192.168.2.30:2377即可加入集群,注意此處需要修改為一行
docker swarm join --token SWMTKN-1-1lbjx00s1qsjbjfuoq92f6d95mf41arbhwbkkigmo1smjqs38r-8i0bdakwhc3lvbbog8fnmvgmw 192.168.2.30:2377坑1:加入集群命令只可以用一行,不可以使用\來進(jìn)行換行
坑2:一定要在防火墻打開相應(yīng)的規(guī)則,打開2377/TCP、7946/TCP、7946/UDP、4789/TCP、4789/UDP端口
坑3:目前測試Linux可以加入Windows Swarm集群,Windows也可以加入Linux Swarm集群,經(jīng)過測試我將Linux節(jié)點(diǎn)加入Windows Swarm集群是正常工作的,但是Linux Swarm Master管理Windows節(jié)點(diǎn)報(bào)錯(cuò),不知是否跟版本存在關(guān)系
在Windows Swarm Master節(jié)點(diǎn)上執(zhí)行
docker service create --name=ping --constraint "Node.Platform.OS==Linux" --network=myspace centos ping 127.0.0.1注意:--constraint "Node.Platform.OS==Linux"一定是雙引號,不能是單引號,否則報(bào)Error response from daemon: rpc error: code = 2 desc = key ''node.Platform.OS' is invalid
5.服務(wù)端口映射問題
在Linux環(huán)境下我們可以通過
docker service create -name web -p 80:80 nginx
在執(zhí)行之后各個(gè)節(jié)點(diǎn)都可以通過80端口進(jìn)行服務(wù),但是在Windows是不行的
docker service create -name iis -p 80:80 microsoft/iis執(zhí)行之后是無法通過80端口訪問
目前是通過
docker service create -name iis -p mode=host,target=80,published=80,protocol=tcp microsoft/iis然后通過docker service ps iis
C:\Users\Administrator>docker service ps iis ID NAME IMAGE NODE DESIRED STATE CURRENT STATE ERROR PORTS e118tf9vu15l iis.2 microsoft/iis:latest Web32 Running Running 2 hours ago *:8090->80/tcp可以看到容器在Web32上,這個(gè)時(shí)候訪問192.168.2.32:8090即可正常訪問,但是訪問主機(jī)的8090端口是無法使用的
6.Docker私有倉庫配置
配置私有倉庫
方法1:更改注冊表[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Docker]
修改為C:\Program Files\Docker\dockerd.exe --run-service --insecure-registry "192.168.2.234:5000"
方法2:修改Docker配置文件,建議修改配置文件
C:\ProgramData\docker\config\daemon.json
{
"insecure-registries" : ["192.168.2.234:5000"]
}
如果沒有該文件可以創(chuàng)建以ASSIC形式
7.Windows Docker開啟遠(yuǎn)程端口訪問
方法一:注冊表修改Docker啟動參數(shù)
C:\Program Files\Docker\dockerd.exe --run-service -D -H tcp://0.0.0.0:2375 -H npipe://方法二:修改Docker daemon.json配置文件
{ "hosts": ["tcp://0.0.0.0:2376", "npipe://"] }另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
分享文章:Windows利用Swarm原生Docker集群踩坑總結(jié)-創(chuàng)新互聯(lián)
轉(zhuǎn)載來于:http://jinyejixie.com/article38/pespp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、域名注冊、外貿(mào)建站、全網(wǎng)營銷推廣、用戶體驗(yàn)、網(wǎng)頁設(shè)計(jì)公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)