前言

很早就听说微软有个基于Ubuntu的子系统,一直也没机会尝试一下,之前也只是用VMware安装,但是还要单独安装软件,安装镜像,一点都不fit,所以就瞎折腾下(也是因为最近有空)。

搭建Ubuntu子系统

wsl是什么

适用于 Linux 的 Windows 子系统(英语:Windows Subsystem for Linux,简称WSL)是一个为在Windows 10和Windows Server 2019上能够原生运行Linux二进制可执行文件(ELF格式)的兼容层。

简单的说,就是在window上安装了个Linux

安装wsl

  1. 开启开发者模式

    依次打开 设置 -> 更新和安全 -> 开发者选项 -> 开发人员模式

  2. 开启windows子系统功能

    依次打开 控制面板 -> 程序 -> 启用或关闭Windows功能 -> 启用Windows子系统

  3. 更新Windows,重启

  4. 在Microsoft Store中搜索Ubuntu,并安装,如图:

    安装完后,默认是个终端,如下:

进入wsl

打开PowerShell,输入指令bash即可进入wsl子系统。默认是root账户,无密码。

Docker环境搭建

由于Ubuntu默认的源下载速度异常缓慢,所以我们需要替换成国内阿里云的镜像源。

确认默认源

vim /etc/apt/sources.list

修改默认源

  1. 备份默认源

    sudo cp /etc/apt/sources.list /etc/apt/sources.list.20200225
  2. 然后 VIM 打开,替换

    sudo vim /etc/apt/sources.list
    
    %s/security.ubuntu/mirrors.aliyun/g
    %s/archive.ubuntu/mirrors.aliyun/g

更新源

```
sudo apt-get update
```

安装Docker

因为都知道的网络原因,安装时可能会timeout等其他情况,所以推荐强烈建议使用国内源,执行以下命令

  • sudo apt-get remove docker docker-engine docker.io
  • sudo apt-get update
  • sudo apt-get install \ apt-transport-https \ ca-certificates \ curl \ software-properties-common
  • curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
  • sudo add-apt-repository \ "deb [arch=amd64] https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu \ $(lsb_release -cs) \ stable"
  • sudo apt-get update
  • sudo apt-get install docker-ce=18.06.1~ce~3-0~ubuntu

ps: 安装高版本的docker好像都会挂,所以我们安装到18.06.1的

一顿操作之后,docker已经安装完成, 使用 docker version 可以查看详细的版本信息,如图:

随后再以管理员启动WSL控制台,执行:

sudo cgroupfs-mount
sudo service docker start

测试安装结果如下:

测试 Docker 是否安装正确

最后,当然要测试一下,我们安装的docker 是否争取啦

但是国内从 Docker Hub 拉取镜像有时会遇到困难,所以我们需要配置镜像加速器。所以,我们需要在/etc/docker/daemon.json中写入如下内容(如果文件不存在请新建该文件)

sudo vi /etc/docker/daemon.json

内容如下:

{
"registry-mirrors": [
"https://dockerhub.azk8s.cn",
"https://hub-mirror.c.163.com"
],
"iptables":false
}

执行 docker run hello-world,如果输出下列信息,那么恭喜你,docker终于搭建完成啦,可以愉快的玩耍了

docker批量删除容器、镜像

  1. 删除所有容器
    docker rm `docker ps -a -q`
  2. 删除所有镜像
    docker rmi `docker images -q`

参考链接

Docker 从入门到实践

WSL中安装Docker

Windows 10 的Linux子系统WSL下安装docker

最后

还真是闲的蛋疼,瞎折腾了挺久的= =,不过最后好在弄好了,也希望各位搭建环境的时候少点坑,感谢各位观众老爷的观看

ps: 最后还是发现wsl兼容性一般啊,居然不能运行moongo...

Windows10开启Ubuntu子系统并搭建Docker环境的更多相关文章

  1. Windows10安装Ubuntu子系统设置Python3测试环境

    参考链接:https://blog.csdn.net/shanelee73/article/details/80238876

  2. Windows10的Ubuntu子系统开启桌面环境

    原文:Windows10的Ubuntu子系统开启桌面环境 Ubuntu 优势之一就是桌面环境比较好,所以咱们的子系统当然也不能少了这一环节,本小结开始安装Ubuntu 桌面系统. 安装环境 使用下面指 ...

  3. Windows(WSL2) Linux子系统搭建Docker环境

    摘要:本文主要介绍了如何再Windows(WSL2)中启用Linux系统中,并搭建Docker环境. WSL是适用于 Linux 的 Windows 子系统可让开发人员按原样运行 GNU/Linux ...

  4. Windows10内置ubuntu子系统安装后中文环境设置

    原文:Windows10内置ubuntu子系统安装后中文环境设置 第一开启相关设置,使用小娜(Win键+c)直接查找关键字打开更快.   ①设置→查找"针对开发人员"→开发人员模式 ...

  5. Windows10访问Ubuntu子系统(WSL)的桌面环境

    原文地址:https://blog.csdn.net/xmh19936688/article/details/90212960 Windows10访问Ubuntu子系统(WSL)的桌面环境文章目录Wi ...

  6. Windows10内嵌Ubuntu子系统配置python开发环境

    Windows10内嵌Ubuntu子系统配置python开发环境 安装pycharm. 到intellij idea网站下载Linux环境下载免费的pycharm,通过ubuntu子系统内部的/mnt ...

  7. Centos搭建 Docker 环境

    搭建 Docker 环境 安装与配置 Docker 安装 Docker Docker 软件包已经包括在默认的 CentOS-Extras 软件源里.因此想要安装 docker,只需要运行下面的 yum ...

  8. Ubuntu搭建docker环境

    一丶自己搭建Ubuntu的虚拟机(网上很多教程) PS:下带图形化界面的Ubuntu镜像,这里只说一下要装那些工具和做那些配置   安装vim         sudo apt-get install ...

  9. Ubuntu开启SSH端口并且搭建Vulhub环境

    1.下载好ubuntu.开启SSH: * sudo apt update * sudo apt install openssh-server * sudo systemctl status ssh 用 ...

随机推荐

  1. 201843 2019-2020-2 《Python程序设计》实验二报告

    201843 2019-2020-2 <Python程序设计>实验二报告 课程:<Python程序设计> 班级: 1843 姓名: 李新锐 学号:20184302 实验教师:王 ...

  2. 向大家介绍我的新书:《基于股票大数据分析的Python入门实战》

    我在公司里做了一段时间Python数据分析和机器学习的工作后,就尝试着写一本Python数据分析方面的书.正好去年有段时间股票题材比较火,就在清华出版社夏老师指导下构思了这本书.在这段特殊时期内,夏老 ...

  3. C# 数据操作系列 - 9. EF Core 完结篇

    0.前言 <EF Core>实际上已经可以告一段落了,但是感觉还有一点点意犹未尽.所以决定分享一下,个人在实际开发中使用EF Core的一些经验和使用的扩展包. 1. EF Core的异步 ...

  4. git pull 部分文件无法获取

    今天发现git pull origin master 的时候部分文件无法获取,然后学到了一个新方法: git fetch git checkout origin/master -- path/to/f ...

  5. Unity2D模拟控制位移

    using UnityEngine; using System.Collections; public class PlayerController : MonoBehaviour { public ...

  6. Node.js中间件的使用

    1.中间件 为主要的业务逻辑服务:接收到请求,以及做出响应 应用级中间件.路由级中间件.内置中间件.第三方中间件.错误处理中间件 (1)路由级中间件 路由器的使用 (2)应用级中间件 也称为自定义中间 ...

  7. python之pytest框架实现

    一.pytest测试框架简介: pytest是一个非常成熟的全功能的Python测试框架,主要有以下几个特点: 简单灵活,容易上手 支持参数化 能够支持简单的单元测试和复杂的功能测试,还可以用来做se ...

  8. Centos7中磁盘管理及扩展

    前提要求: 虚拟机:centos7 虚拟机软件:VMware Workstation 12 在安装Centos系统时,磁盘选择为LVM逻辑卷.当选择为LVM后才能创建逻辑卷等(必须) 数据格式选择的是 ...

  9. 太高效了!玩了这么久的Linux,居然不知道这7个终端快捷键!

    大家好,我是良许. 作为 Linux 用户,大家肯定在 Linux 终端下敲过无数的命令.有的命令很短,比如:ls .cd .pwd 之类,这种命令大家毫无压力.但是,有些命令就比较长了,比如: $ ...

  10. 【C#图解教程学习笔记】第13章 委托

    13.1 什么是委托 委托是持有一个或多个方法的对象,可将一个方法传递到另一个方法. 委托是用户自定义的引用类型. 13.2 委托概述 类表示的是数据和方法的集合,而委托持有一个或多个方法,以及一系列 ...