首页> 知识分享 >其它分享 其它分享
docker-windows-测试
作者:小萝卜 2019-05-30 【 Linux Docker 】 浏览 3055
简介dockers目前提供desktop和server两个版本的dockers(不同于早期的docker for windows和docker in windows),两者区别,server属于收费版本(向dockers缴费)支持swarm和kubernetes,后者是免费版本swarm和kubernetesgone功能不完整,本次测试主要使用后者
参考资料:
https://blog.csdn.net/dt763C/article/details/84206890 windows docker讲解
https://docs.docker.com/swarm/get-swarm/ docker swarm安装方法
http://www.cnblogs.com/ghostdao/p/10784886.html vs编译dockerfile
https://docs.microsoft.com/zh-cn/virtualization/ 微软官方文档
https://github.com/MicrosoftDocs/Virtualization-Documentation 微软dockergit
https://hub.docker.com/search?q=php&type=image&operating_system=windows docker官方镜像下载
docker和windows官方说明
docker方面:
官网地址:https://www.docker.com/products/orchestration
dockers目前提供desktop和server两个版本的dockers(不同于早期的docker for windows和docker in windows),
两者区别,server属于收费版本(向dockers缴费)支持swarm和kubernetes,后者是免费版本swarm和kubernetesgone功能不完整,本次测试主要使用后者
下载地址:https://hub.docker.com/editions/community/docker-ce-desktop-windows
官方提供两种版本的Docker Desktop for Windows,一个是一季度更新一次的stable版本,一个是一月更新一次的Edge版本
windos方面:
此处提供win10和win2019两种系统安装方法,其中win10上安装的方法和docker上的desktop相同,win2019上方法经测试仅支持windows,此处测试使用docker的desktop在win10和win2019上安装使用
测试步骤:
一:镜像文件通用性测试
1.系统(win10和win2019)统一安装hyper-v和container
2.安装的Docker Desktop for Windows(stable)
windows和linux内核时管理界面:
windows时:
linux时:
先选择linux内核
下载linux镜像如centos,成功上传到私库
下载windows镜像提示
切换到windows内核
切换时提示:
windows内核:
3.测试开始:
linux镜像:
第一步:切换windows服务器到linux内核,下载nginx和centos并上传到私库、同时在本机启动镜像可以正常访问
第二步:更换一台windows服务器并启动windows的linux内核版docker,下载之前上传的nginx和centos镜像并启动容器,可正常使用
第三步:更换一台linux服务器安装docker并从私库中下载之前windows的linux内核上传的nginx和centos镜像,并启动容器,可正常使用
第四步:在linux服务器中,下载ubuntu和nginx上传到私库,在本机启动容器可用
第五步:在windows服务器的linux内核中,下载之前的linux服务器上传的ubuntu和nignx镜像并启动,可正常使用
第六步:切换windows的内核为windows,启动之前下载的linux镜像,测试可用
说明:windows的linux内核版docker和linux服务器的docker,镜像是通用的,而且在windows下无论内核是linux还是windows都可以启动linux镜像此功能和在windows2016时测试的docker不通,在windows2016时,windows服务器只能启动windows镜像。
windows镜像:
在windows内核时,下载windows的镜像(此镜像分两种microsoft和nanoserver),使用Microsoft的镜像启动正常,使用nanoserver时,提示镜像无法使用,Microsoft的基础镜像大小为4G,而nanoserver的基础影响为1.3G,
第一步:切换windows服务器到windows内核,下载Microsoft并成功上传到私库
第二步:在另一台windows服务器上使用windows内核docker下载之前上传镜像并成功启动
第三步:切换到windows服务器的windows内核,下载linux镜像并成功上传到私库,启动镜像成功
第四步:在另一台windows服务器上使用windows内核docker下载之前上传的linux镜像并启动镜像成功
第五步:切换到windows服务器的linux内核,下载Microsoft镜像失败
说明:windows的镜像(暂时只针对microsoft,nanoserver单独测试),可上传到linux版本的私库并可以在其它windows服务器上使用
二:nanoserver镜像测试
经测试nanoserver镜像只能在windows2016使用,windows2016安装docker方法:
1.在win2016中安装hyperv
2.在powershell中运行一下命令
Install-Module DockerProvider -Force
Install-Package Docker -ProviderName DockerProvider -Force
Restart-Computer -Force
3.dockerfile创建容器
docker build -t harbor.cmr.net.cn/iisphp7:v1 .
docker tag 6bb1aac98231 harbor.cmr.net.cn/windows/cmrwindows/iisphp:v1
docker run -i -t -d —restart=always -p 83:80 harbor.cmr.net.cn/windows/cmrwindows/iisphp:v1
三:dockerfile示例
dockerfile
Dockerfile for Nano Server + IIS Role + PHP.
FROM nanoserver/iis
MAINTAINER nanoserver.es@gmail.com
ADD http://docker.cmr.net.cn/php-7.0.10-nts-Win32-VC14-x64.zip php.zip
ADD http://docker.cmr.net.cn/vcruntime140.dll C:\Windows\System32\vcruntime140.dll
ADD http://docker.cmr.net.cn/iisfcgi.dll C:\Windows\System32\inetsrv\iisfcgi.dll
ADD http://docker.cmr.net.cn/info.dll C:\inetpub\wwwroot\info.php
ENV PHP C:\php
RUN powershell -command Expand-Archive -Path c:\php.zip -DestinationPath C:\php
RUN setx PATH /M %PATH%;C:\php
ADD http://docker.cmr.net.cn/php.ini C:\php\php.ini
RUN powershell -command \
rm C:\Windows\System32\inetsrv\config\Applicationhost.config ; \
Invoke-WebRequest -uri http://docker.cmr.net.cn/ApplicationHost.dll -outfile C:\Windows\System32\inetsrv\config\Applicationhost.config ; \
Remove-Item c:\php.zip -Force
很赞哦! (0)
上一篇:showdoc升级文档
下一篇:docker私库使用方法