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. Python Django 2.1登录功能_1

      #在上篇的基础上进行#在.../sign/templates/index.html文件,开发登录表单 <html> <head> <title>Django Pag ...

    2. VMware workstation创建虚拟机console图文

      1. 概述2. 配置入口3. 新建虚拟机向导3.1 类型配置3.2 硬件兼容性3.3 操作系统安装3.4 客户机操作系统类型3.5 客户机的名称位置4. 客户机硬件配置选择4.1 客户机处理器配置4. ...

    3. 如何优雅地在 Spring Boot 中使用自定义注解,AOP 切面统一打印出入参日志 | 修订版

      欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 资深架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...

    4. 怎么动态生成js变量

      动态生成全局变量: //简单的用字符串作为变量名 window['hello'] = "hello, world"; alert(hello);   //批量定义 for(var  ...

    5. Django解决跨域问题

      原理:浏览器的同源策略,其实我们的请求发送过去了,服务器也进行响应了,就是浏览器把响应给阻止响应而已 第一种方法jsonp 因为浏览器不对 <script> 标签里面的src属性进行阻止, ...

    6. vue.js框架原理浅析

      vue.js是一个非常优秀的前端开发框架,不是我说的,大家都知道. 首先我现在的能力,独立阅读源码还是有很大压力的,所幸vue写的很规范,通过方法名基本可以略知一二,里面的原理不懂的地方多方面查找资料 ...

    7. JAVA匿名内部类(Anonymous Classes)

      1.前言 匿名内部类在我们JAVA程序员的日常工作中经常要用到,但是很多时候也只是照本宣科地用,虽然也在用,但往往忽略了以下几点:为什么能这么用?匿名内部类的语法是怎样的?有哪些限制?因此,最近,我在 ...

    8. css属性分类介绍

      css属性分类介绍 CSS分类目录 文本/字体/颜色 文本相关 字体相关 颜色相关 背景相关 大小/布局 大小属性 margin 外边距 padding 内边距 border 边框 position ...

    9. 生产环境一键创建kafka集群

      前段时间公司的一个kafka集群出现了故障,由于之前准备不足,当时处理的比较慌乱.如:由于kafka的集群里topic数量较多,并且每个topic的分区数量和副本数量都不是一样的,如果按部就班的一个一 ...

    10. webapi 跨域问题

      参考:http://www.cnblogs.com/chenxizhang/p/3821703.html 给自己做个笔记 HttpContext.Current.Response.AddHeader( ...