wsl中使用原生docker
之前介绍过windows中安装docker,但是它需要用到hyper-v。hyper-v与vm不兼容非常之不方便。不过发现windows有wsl(linux子系统)遂试验,结果非常nice功能一应俱全docker完美兼容,与大家分享一下安装过程。
开启win10的linux子系统功能
- 推荐win10升级到最新版本
打开powershell执行命令
Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux
或者在控制面板中的程序中启用适用于linux的winodws子系统(直译?),然后重启电脑
这时可以去microsoft store中选择linux发行版,我用的是ubuntu18.04
建议大家与我一致。安装完后打开还需要下载一些文件,大家只需要坐与放宽即可
cmd更换配色
在下载文件时也别闲着,windowns自带的cmd配色难看至极,一会使用vim的时候保你字都看不清。
- 去github下载colortool 地址 https://github.com/Microsoft/console
- 使用管理员打开cmd进入解压后的文件夹
- 执行命令
colortool.exe d OneHalfLight
(还有其他配色方案,在schemes下) - 窗口标题栏右键默认值保存,属性保存
切换root账户
一顿操作下来ubuntu也该o98k了,开始设置用户密码,然后我们需要使用root账户
- 管理员模式打开ubuntu18.04
sudo passwd
输入密码与root密码su root
输入密码
但是这时每次打开ubuntu的时候还是普通用户,我们可以使用命令设置默认用户
ubuntu1804 config --default-user root
安装docker
linux子系统已经收工,下面安装docker。我们可以直接根据docker文档中提供的ubuntu安装docker的方法进行操作 ps:使用管理员打开ubuntu1804
因为都知道的网络原因安装时可能会timeout等其他情况,我们可以使用国内镜像 https://mirrors.tuna.tsinghua.edu.cn/ 清华大学开源软件镜像站替换下面的链接
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg
https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/
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://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
sudo add-apt-repository \ "deb [arch=amd64] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) \ stable"
sudo apt-get update
sudo apt-get install docker-ce
一顿操作已经安装结束,使用 sudo service docker start
开启docker守护进程
使用 docker version
查看版本
The end
这时开发时就很方便了,也不用担心hyper-v与vm不兼容的问题。例如在vs code中我们可以很容器的在终端中进行子系统进行各种操作,例如在vs code使用终端进入linux子系统执行各种操作(linux与windows文件共享)
wsl中使用原生docker的更多相关文章
- 说一说windows原生docker及windows Server Container , Hyper Container 之间的关系(学习总结)
前一段时间学习netcore的时候解除到了docker,感觉真是不错的技术.百度了不少教程.因为我用windows就下载安装了一下试试.但是没有安装成功,才发现 需要安装virtualbox虚拟机,与 ...
- Windows下的Linux子系统安装,WSL 2下配置docker
Windows下的Linux子系统安装,WSL 2下配置docker 前提条件: 安装WSL 2需要Windows 10版本是Build 18917或更高,首先先确认系统版本已升级. 在“启用或关闭W ...
- WSL中使用systemctl报错问题
Windows10里面自带的wsl中安装docker后不支持systemctl命令.需要更换命令,用Sysvinit的命令代替systemd,命令如下: Systemd command Sysvini ...
- [云原生]Docker - 简介
目录 什么是Docker? 为什么使用Docker? 对比传统虚拟机总结 什么是Docker? Docker是一个开源项目,诞生于2013年初,最初是dotCloud公司内部的一个业务项目.它基于Go ...
- EF中执行原生sql与使用Local获取本地数据
使用DbSet的Local属性可以访问当前context中被追踪且没有被标记为删除的实体(内存中的数据) using (var context = new BloggingContext()) { / ...
- django中使用原生sql
在Django中使用原生Sql主要有以下几种方式: 一:extra:结果集修改器,一种提供额外查询参数的机制 二:raw:执行原始sql并返回模型实例 三:直接执行自定义Sql ( 这种方式完全不依赖 ...
- Java中的原生数据类型
Java中的原生数据类型(Primitive DataType)共有8种: 1)整型: 使用int表示(32位).2)字节型: 使用byte表示(从-128到127之间的256个整数).3)短 ...
- centos中简易安装docker
centos中简易安装docker准备环境要求:请确保自己的centos的内核版本大于3.10,使用如下linux命令: uname -r1显示如下类似信息: 3.10.0-862.3.3.el7.x ...
- docker开启2376端口CA认证及IDEA中一键部署docker项目
嘿,大家好,今天更新的内容是docker开启2376端口CA认证及IDEA中一键部署docker项目... 先看效果 我们可以通过idea一键部署docker项目,还以通过idea的控制台实时查看容器 ...
随机推荐
- DICOM图像转出为bmp格式图像方法(matlab程序实现)
在matlab中用dicomread读取dicom文件后,生成一个MxN矩阵(对应图像像素个数),每个像素灰度数据是int16格式 但是bmp图像灰度是int8格式的(灰度范围0~255),所以若想把 ...
- 如何让Qt程序在运行时获取UAC权限
在pro文件中加入以下语句: QMAKE_LFLAGS += /MANIFESTUAC:\"level=\'requireAdministrator\' uiAccess=\'false\' ...
- Spark环境搭建(五)-----------Spark生态圈概述与Hadoop对比
Spark:快速的通用的分布式计算框架 概述和特点: 1) Speed,(开发和执行)速度快.基于内存的计算:DAG(有向无环图)的计算引擎:基于线程模型: 2)Easy of use,易用 . 多语 ...
- 3A
# -*- coding: utf-8 -*- import datetime, time, heapq, cx_Oracle #2rd sheet def get_5mins_3A_LOG(): c ...
- iview安装使用
iView 是一套基于 Vue.js 的开源 UI 组件库,主要服务于 PC 界面的中后台产品. 安装 cd 项目 cnpm install iview -S 在项目中引入iview 在入口文件mai ...
- Java spring boot 2.0连接mysql异常:The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone
解决办法:application.yml提示信息表明数据库驱动com.mysql.jdbc.Driver'已经被弃用了.应当使用新的驱动com.mysql.cj.jdbc.Driver' com.my ...
- 电子科技大学实验中学PK赛(一)比赛题解
比赛来源:第十四届重庆大学程序设计大赛暨西南地区高校邀请赛现场初赛 比赛地址:http://qscoj.cn/contest/24/ A. Comb 自述 分析:统计ACM在题目描述中出现的次数,认真 ...
- Data Center手册(1):架构
如图是数据中心的一个基本架构 最上层是Internet Edge,也叫Edge Router,也叫Border Router,它提供数据中心与Internet的连接. 连接多个网络供应商来提供冗余可靠 ...
- Java打包商用化软件
这是我在博客中写的第一篇文章.还请各位大神们多多指教!我会详细讲解如何将我们由java的swing以及awt组件编写出的java可视化窗口程序编制成一个我们能够让用户使用的,商业化,可安装的软件.网上 ...
- Android程序员必知必会的网络通信传输层协议——UDP和TCP
1.点评 互联网发展至今已经高度发达,而对于互联网应用(尤其即时通讯技术这一块)的开发者来说,网络编程是基础中的基础,只有更好地理解相关基础知识,对于应用层的开发才能做到游刃有余. 对于Android ...