Docker on Windows Server 2019

微软自Windows Server 2016开始支持Docker,今天我们将介绍在Windows Server 2019上安装并使用Docker容器。

Install Docker EE on windows server 2019

  1. 启用服务器Hyper-V,Containers特性
Install-WindowsFeature -Name Hyper-V,Containers -IncludeAllSubFeature -IncludeManagementTools
  1. Install Docker EE

Install-Module DockerMSFTProvider Import-Module -Name DockerMSFTProvider -Force Import-Packageprovider -Name DockerMSFTProvider -Force

通过Find-Package docker确认是否安装成功


PS C:\Users\Administrator> Find-Package docker Name Version Source Summary
---- ------- ------ -------
Docker 1.3.2 PSGallery This module helps with development using Docker on localhost. It ...
Docker 18.09.5 DockerDefault Contains Docker EE for use with Windows Server.

安装Docker


Install-Package -Name Docker -Source DockerDefault

启用Docker Linux Container Support

目前基于Windows Container只能运行Windows应用程序。


# Set LCOW_SUPPORTED Variable to 1 for enabled
[Environment]::SetEnvironmentVariable("LCOW_SUPPORTED", "1", "Machine") # Enable Experimental Features in Dockerd daemon.conf
$configfile = @"
{
"experimental": true
}
"@
$configfile|Out-File -FilePath C:\ProgramData\docker\config\daemon.json -Encoding ascii -Force

在Docker使用 Linux Container时,仍然需要使用Linux kernal。

You should use the latest LCOW release here

Invoke-WebRequest -Uri "https://github.com/linuxkit/lcow/releases/download/v4.14.35-v0.3.9/release.zip" -UseBasicParsing -OutFile release.zip

Expand-Archive release.zip -DestinationPath "$Env:ProgramFiles\Linux Containers\."

Redis on Docker Linux Container

现在我们即可使用 Windows Container或者Linux Container,但是由于目前基于Windows Container只能运行Windows应用程序,所以我们需要使用--platform选择一种容器类型,参考如下


docker run --platform=linux --name redis-server -d -p 6379:6379 --restart=always redis

References

  1. Posted on February 12, 2019 by Ben Thomas,Getting started with Linux Containers on Windows Server 2019
  2. November 16, 2018 by Andy Syrewicze (Chief Editor)

    ,How to Run

    Windows Server 2019 容器化探索-Docker安装的更多相关文章

    1. Windows Server 2019 预览版介绍

      在Windows server 2012.Windows server 2016还未完全普及的情况下,昨天Windows Server团队宣布Windows Server 2019将在2018年的下半 ...

    2. 手把手教您在 Windows Server 2019 上使用 Docker

      配置 Windows 功能 要运行容器,您还需要启用容器功能 Install-WindowsFeature -Name Containers 在 Window Server 2019 上安装 Dock ...

    3. 戴尔PowerEdge T110 Ⅱ服务器U盘安装Windows Server 2019 DataCenter

      一. 下载准备 准备工作——下载Microsoft Windows Server 2019 官方简体中文激活版 (MSDN)原版iso镜像 准备工作——安装刻录软件UltraISO,单文件绿色版就够用 ...

    4. Windows Server 2019安装OpenSSH Server简明教程

      Windows Server 2019安装OpenSSH Server简明教程   Windows Server 2019内置OpenSSH Server组件了.只不过OpenSSH Server默认 ...

    5. MySQL 8.0.18 在 Windows Server 2019 上的安装(ZIP)公开

      AskScuti MySQL : Windows Server 2019 安装 MySQL 8.0 温馨提示:为了展现我最“魅力”的一面,请用谷歌浏览器撩我. 一切就绪,点我开撩

    6. MySQL 8.0.18 在 Windows Server 2019 上的安装(MSI)公开

      AskScuti MySQL : Windows Server 2019 安装 MySQL 8.0 温馨提示:为了展现我最“魅力”的一面,请用谷歌浏览器撩我.那个 IE 啊,我很无奈. 一切就绪,点我 ...

    7. 在Windows Server 2019上安装edge浏览器

      在Windows 2016和2019的正式版本中是不带Edge浏览器的.有些工具.网站也不支持IE浏览器了.对于偶尔需要在服务器上访问这些站点的管理员来说有些不方便.不过可以通过安装三方浏览器或者Ed ...

    8. 【转帖】使用容器化和 Docker 实现 DevOps 的基础知识

      使用容器化和 Docker 实现 DevOps 的基础知识 https://www.kubernetes.org.cn/6730.html 2020-02-24 15:20 灵雀云 分类:容器 阅读( ...

    9. Windows Server 2019远程桌面服务配置和授权激活

      参考Windows Server 2016远程桌面服务配置和授权激活方法可适用于Windows Server 2019     Server 2016默认远程桌面连接数是2个用户,如果多余两个用户进行 ...

    随机推荐

    1. 在Jenkins中使用sonar进行静态代码检查

      要解决的问题 jenkins自动构建完成后,希望能通过sonar静态代码检查生成一份报告,给与开发人员对当前代码的做一个质量评估和修改意见 1.安装并配置sonar服务器 懒得说,跟着官方文档走就行, ...

    2. Vue-CLI和脚手架

      但我们学习Vue时,很多教程都会说到用Vue-CLI构建项目,那么什么是脚手架?什么是Vue-CLI?为什么要用脚手架,好处在哪?以及为何我们用Vue开发项目时要用到Vue-CLI? 首先,CLI为c ...

    3. TypeScript 实现任务队列

      业务中经常会有一些批量操作的任务,比如使用 JavaScript 预加载一组图片,批量上传一些资源.如果这些任务一次性启动,势必会消耗很多资源和带宽.理想的做法应该对这些任务进行限制,比如一次只跑几个 ...

    4. Python 中的设计模式详解之:策略模式

      虽然设计模式与语言无关,但这并不意味着每一个模式都能在每一门语言中使用.<设计模式:可复用面向对象软件的基础>一书中有 23 个模式,其中有 16 个在动态语言中“不见了,或者简化了”. ...

    5. Java中堆(heap)和栈(stack)的区别

      简单的说: Java把内存划分成两种:一种是栈内存,一种是堆内存. 在函数中定义的一些基本类型的变量和对象的引用变量都在函数的栈内存中分配. 当在一段代码块定义一个变量时,Java就在栈中为这个变量分 ...

    6. DSAPI DS密法

      DS密法是DYLIKE本人研发的一种针对文本字符串的高强度加密方法,本加密方法的优点是同源不同密,同一个源文本每次加密的结果都不同,长度也不同.密钥最大可达String类型的字符最大长度.缺点是解密时 ...

    7. JavaSE:数据类型之间的转换(附常见面试题)

      数据类型之间的转换 分为以下几种情况: 1)低级到高级的自动类型转换: 2)高级到低级的强制类型转换(会导致溢出或丢失精度): 3)基本类型向类类型转换: 4)基本类型向字符串的转换: 5)类类型向字 ...

    8. 设计模式 | 建造者模式/生成器模式(builder)

      定义: 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示. 结构:(书中图,侵删) 一个产品类 一个指定产品各个部件的抽象创建接口 若干个实现了各个部件的具体实现的创建类 一个 ...

    9. 海康相机SDK二次开发只有视频无声音问题

      海康SDK相信做企业开发的的同仁,在项目中经常会用到,毕竟使用范围这么广. 本次就开发遇到的奇葩问题来说明一下我们的解决方案. 场景 虽然海康有4200客户端,但是对于高度定制化的项目,肯定不能再使用 ...

    10. gitbook 入门教程之环境要求

      gitbook 是基于 node.js 的命令行工具,首先需要安装并配置好 node.js 环境,然后才能安装gitbook 相关工具. 由于安装工具全部都是国外网站,因此速度可能会很慢,也可能需要F ...