首页> 知识分享 >其它分享 其它分享

docker-windows-测试

作者:小萝卜 2019-05-30 浏览 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官方镜像下载

  1. 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方面:

官网:https://docs.microsoft.com/zh-cn/virtualization/windowscontainers/manage-docker/configure-docker-daemon#install-docker

此处提供win10和win2019两种系统安装方法,其中win10上安装的方法和docker上的desktop相同,win2019上方法经测试仅支持windows,此处测试使用docker的desktop在win10和win2019上安装使用

  1. 测试步骤:

一:镜像文件通用性测试

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)

文章评论

    高端网站建设