window10下安装ubuntu系统以及docker使用
window10下安装ubuntu系统以及docker使用
- 1. 启用适用于Linux的Windwos子系统
- 2.下载Linux内核更新包
- 3.将 WSL 2 设置为默认版本
- 4.安装Ubuntu<br />直接去Microsoft store里面直接搜索Ubuntu进行安装。
- 5.可能出现的问题
- 1.win10启动ubuntu报错 参考的对象类型不支持尝试的操作.
- 2.docker服务启动不起来问题排查解决。
- 6.安装docker
- 7.使用docker
1. 启用适用于Linux的Windwos子系统
首先,win10的子系统开启前,需要进行一系列操作,并重启计算机,过程如下:
打开win10开发人员模式,在设置–>更新和安全–>针对开发人员,中勾选开发人员模式。
然后在控制面板中勾选添加Linux子系统。依次进入控制面板–>程序–>启用或关闭windows功能,勾选适用于windows的linux的子系统以及虚拟机平台,点击确定。之后重启电脑。
重启后就可以安装Linux子系统了。
2.下载Linux内核更新包
更多详情参考官方文档:适用于 Linux 的 Windows 子系统文档
下载链接:https://wslstorestorage.blob.core.windows.net/wslblob/wsl_update_x64.msi
下载完成双击安装
4. 将 WSL 2 设置为默认版本
打开 PowerShell,然后在安装新的 Linux 发行版时运行以下命令,将 WSL 2 设置为默认版本:
PowerShell复制
wsl --set-default-version 2
3.将 WSL 2 设置为默认版本
打开 PowerShell,然后在安装新的 Linux 发行版时运行以下命令,将 WSL 2 设置为默认版本:
wsl --set-default-version 2
可以打开 PowerShell 命令行并输入以下命令检查分配给每个已安装的 Linux 分发版的 WSL 版本:
wsl -l -v

4.安装Ubuntu
直接去Microsoft store里面直接搜索Ubuntu进行安装。


首次启动新安装的 Linux 分发版时,将打开一个控制台窗口,系统会要求你等待一分钟或两分钟,以便文件解压缩并存储到电脑上。 未来的所有启动时间应不到一秒。
然后,需要为新的 Linux 分发版创建用户帐户和密码
5.可能出现的问题
1.win10启动ubuntu报错 参考的对象类型不支持尝试的操作.
解决方案:
1.通过管理员身份打开Windows PowerShell
打开之后输入以下命令重置Winsock目录。
netsh winsock reset

2.docker服务启动不起来问题排查解决。
sudo service docker start启动服务,显示 * Starting Docker: docker,
sudo service docker status 查看服务状态的时候却是 * Docker is not running。
使用docker version看到docker的服务端根本没有启动起来。服务端显示:Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
通过 sudo dockerd命令查看日志内容如下:
$ cat /var/log/docker.log
...
Sep 13 20:47:37 xxx dockerd: failed to start daemon: Error initializing network controller: errorobtaining controller instance: failed to create NAT chain DOCKER: iptables failed: iptables -t nat -N D
OCKER: iptables v1.4.21: can't initialize iptables table `nat': Table does not exist (do you need to ins
mod?)
解决方案:
1.首先,将iptables用iptables-legacy替换:
sudo update-alternatives --set iptables /usr/sbin/iptables-legacy
2.开启 ipv4 的包转发功能:
sudo sed -i 's/#net.ipv4.ip_forward=1/net.ipv4.ip_forward=1/g' /etc/sysctl.conf`
3.退出重新启动ubuntu 22.04 LST即可。
6.安装docker
#Step1:更新系统软件包
sudo apt update#Step2:安装依赖包【用于通过HTTPS来获取仓库】
sudo apt install apt-transport-https ca-certificates curl software-properties-common#Step3:添加Docker官方GPG密钥
sudo -i
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/trusted.gpg.d/docker-ce.gpg#Step4:验证
sudo apt-key fingerprint 0EBFCD88
0EBFCD88 是公钥的指纹。执行这个命令后,系统会显示与该指纹相关的公钥信息。#Step4:添加Docker阿里稳定版软件源
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"#Step5:再次更新软件包
sudo apt update#Step6:安装默认最新版
sudo apt install docker-ce docker-ce-cli containerd.io#Step7:测试,安装好后默认启动
sudo docker run hello-world
如果输出“Hello from Docker!”则表示Docker已经成功安装。#Step8:查看有哪些镜像
sudo docker images#Step9:配置用户组
sudo usermod -aG docker galaxfy
su - galaxfy # 刷新shell状态
docker images # 验证#Step10:其他docker运行命令
查看状态:sudo service docker status
启动:sudo service docker start
开机自启:sudo service enable docker
停止:sudo service stop docker
查看docker日志 sudo dockerd其他:安装特定版docker
sudo apt-cache madison docker-ce # 显示可用版本
sudo apt-get install docker-ce=<VERSION_STRING> docker-ce-cli=<VERSION_STRING> containerd.io # 将需要的版本替换VERSION_STRING进行安装,例如 5:20.10.17~3-0~ubuntu-focal
7.使用docker

# 构建 Docker 镜像 执行 Makefile 中定义的与构建 Docker 镜像相关的命令
make coker
# 查看本地已经存在的镜像 名称、标签、镜像 ID、创建时间以及所占用的空间
root@LAPTOP-6S9PKSTR:/mnt/d/Jwork/api/workflow# docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
xxx.com/build-biz-test WC-1122 da4c841c15f1 21 hours ago 90.9MB
# docker rmi -f [imageId] 强制删除 Docker 镜像
docker rmi -f da4c841c15f1#给一个镜像添加一个新的标签
#xxx.com 是阿里云的 Docker 镜像仓库地址,/aaa-dev/user-manual 是镜像名称,WC-1122 是标签。
docker tag xxx.com/build-biz-test:WC-1122
111.51.55/build-biz-test:WC-1122#docker save -o <output-file.tar> <image-name>
#将 Docker 镜像保存为一个 tar 归档文件。 -o 选项指定了输出文件的名称或路径
docker save -o build-biz-test.tar xxx.com/build-biz-test:WC-1122


把这个包加入到自己的服务器里面。进入到你放文件的位置。
#从一个 tar 归档文件中加载 Docker 镜像。
docker load -i build-biz-test.tar
#将本地的 Docker 镜像推送到远程 Docker 镜像仓库
docker push <image-name>
#从远程 Docker 镜像仓库中拉取(下载)一个 Docker 镜像到本地系统
docker pull <image-name>
#编辑 Kubernetes 中的一个部署(Deployment)资源对象 更改为刚推送的镜
kubectl edit deploy my-deployment
相关文章:
window10下安装ubuntu系统以及docker使用
window10下安装ubuntu系统以及docker使用 1. 启用适用于Linux的Windwos子系统2.下载Linux内核更新包3.将 WSL 2 设置为默认版本4.安装Ubuntu<br />直接去Microsoft store里面直接搜索Ubuntu进行安装。5.可能出现的问题1.win10启动ubuntu报错 参考的对象类型不支持尝试的操…...
Netty核心组件介绍
Netty是一款用于创建高性能网络应用程序的高级框架。Netty的核心组件如下: Channel回调Future事件和ChannelHander Channel channel是Java NIO的一个基本构造。可以把Channel看作是传入或传出数据的载体。它可以被打开或关闭,连接或断开连接。 回调 …...
代码审计平台sonarqube的安装及使用
docker搭建代码审计平台sonarqube 一、代码审计关注的质量指标二、静态分析技术分类三、使用sonarqube的目的四、sonarqube流程五、docker快速搭建sonarqube六、sonarqube scanner的安装和使用七、sonarqube对maven项目进行分析八、sonarqube分析报告解析九、代码扫描规则定制十…...
C++ 使用nlohmann/json.hpp库读写json字符串
1. json库 我个人比较喜欢 nlohmann/json.hpp 这个库,因为它只需要一个hpp文件即可,足够轻量! 这是它的github地址。 2. 简单实例代码 #include <iostream> #include <json.hpp> #include <fstream> #include <stri…...
3GPP官网下载协议步骤
1.打开官网 https://www.3gpp.org/ 2.点击 3.在界面选择要找的series,跳转到查找界面 以V2X通信协议为例,论文中通常会看到许多应用: [7] “Study on evaluation methodology of new Vehicle-to-Everything (V2X) use cases for LTE and NR…...
【JAVA】Git 的基本概念和使用方式
Git是一个开源的分布式版本控制系统,由Linus Torvalds创建,用于有效、高速地处理从小到大的项目版本管理。以下是Git的一些基本概念和使用方式的深入探讨: 基本概念 1. 仓库(Repository) 仓库是Git用来保存你的项目…...
C++多态实现原理详解
阅读引言: 我想象了一下, 假如人有突然问我什么是多态, 我该如何给别人说清楚呢?所以写下这篇文章, 希望大家看完有所收获。 ①. 开胃小菜 先看这样一个开胃小菜 这里我有点小小的疑惑, 大小为啥是1。 在C…...
[数据集][目标检测]交通灯检测数据集VOC+YOLO格式2600张1类别
数据集格式:Pascal VOC格式YOLO格式(不包含分割路径的txt文件,仅仅包含jpg图片以及对应的VOC格式xml文件和yolo格式txt文件) 图片数量(jpg文件个数):2600 标注数量(xml文件个数):2600 标注数量(txt文件个数):2600 标注…...
关于测试用例
目录 一 测试用例介绍 二 写用例的好处 三 不适合写用例的情况 一 测试用例介绍 测试用例由测试来写,编写时间在需求评审和设计评审(如有)结束后,需求提测前,用例依赖需求文档来编写。一般包含用例标题,…...
一起长锈:3 类型安全的Rust宏(从Java与C++转Rust之旅)
讲动人的故事,写懂人的代码 故事梗概:在她所维护的老旧Java系统即将被淘汰的危机边缘,这位在编程中总想快速完事的女程序员,希望能转岗到公司内部使用Rust语言的新项目组,因此开始自学Rust;然而,在掌握了Rust编程知识之后,为了通过Rust项目组的技术面试,使得转岗成功而…...
《金融研究》:普惠金融改革试验区DID工具变量数据(2012-2023年)
数据简介:本数据集包括普惠金融改革试验区和普惠金融服务乡村振兴改革试验区两类。 其中,河南兰考、浙江宁波、福建龙岩和宁德、江西赣州和吉安、陕西铜川五省七地为普惠金融改革试验区。山东临沂、浙江丽水、四川成都三地设立的是普惠金融服务乡村振兴…...
Prompt|Kimi高阶技巧,99%的人都不知道
大家好,我是无界生长。 今天分享一条咒语,轻松让Kimi帮你生成流程图,学会了的话,点赞收藏起来吧! 效果展示 我们演示一下让kimi帮忙绘制 关注微信公众号“无界生长”的流程图,最终效果图如下所示 效果还不…...
采购管理软件:采购自动化提高效率的5种方式
在采购领域,手动数据输入和耗时的文书工作的时代已经落后了。采购自动化正在改变游戏规则,使企业能够简化流程、降低成本并提高效率。 以下是采购自动化帮助企业提高效率的5种方法。 采购管理软件,采购自动化管理,8Manage SRM,高亚科技 减少手动流程和…...
Android App开机启动
清单文件 <?xml version"1.0" encoding"utf-8"?> <manifest xmlns:android"http://schemas.android.com/apk/res/android"xmlns:tools"http://schemas.android.com/tools"><uses-permission android:name"andro…...
服务器直连电脑(盒子直连电脑)电脑需要设置为固定ip才能访问盒子
文章目录 现象盒子设置为固定ip,pc设置成固定ip(以太网网卡,realtak那个,不是tap-windows那个,tap-windows不用管),在pc上用ip搜索工具搜索,可以搜到盒子ip。盒子设置为固定ip&#…...
【设计模式】之代理模式(两种)
系列文章目录 (其他设计模式可以参考 👉👉👉)设计模式_小杰不秃头的博客 😊😄😛 前言 今天继续给大家介绍23种设计模式中的代理模式,熟悉Spring的小伙伴都知道…...
【工具篇】-什么是.NET
“.NET":.NET Core是由Microsoft开发,目前在.NET Foundation(一个非营利的开源组织)下进行管理。.NET Core是用C#和C编写的,并采用MIT协议作为开源协议。 简单来说:就是开发框架。 .NET 又称 .NET 平台或 .NET 框架…...
OmniReader Pro mac激活版:智慧阅读新选择,开启高效学习之旅
在追求知识的道路上,一款优秀的阅读工具是不可或缺的。OmniReader Pro作为智慧阅读的新选择,以其独特的功能和卓越的性能,为您开启高效学习之旅。 OmniReader Pro具备高效的文本识别和处理技术,能够快速准确地提取文档中的关键信息…...
Stable Diffusion学习记录
文章目录 前言电脑配置推荐环境搭建下载地址安装步骤步骤一,打开下载的秋叶整合包,路径秋叶整合包/sd-wenui-aki步骤二,打开下载好的sd-webui-aki-v4.8.7解压包 Stable Diffusion软件配置,插件安装,模型下载Stable Dif…...
安装openssh-server,提供远程ssh
安装openssh-server,提供远程ssh 1.检查自己是否安装了openssh-server dpkg -l | grep ssh如果输出内容有openssh-server,说明已经安装过了,可以跳过下一步 2.安装openssh-server 由于ubuntu自带ssh客户端,只需要安装openssh-se…...
【Axure高保真原型】引导弹窗
今天和大家中分享引导弹窗的原型模板,载入页面后,会显示引导弹窗,适用于引导用户使用页面,点击完成后,会显示下一个引导弹窗,直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…...
(二)TensorRT-LLM | 模型导出(v0.20.0rc3)
0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述,后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作,其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...
从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)
设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile,新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...
Web 架构之 CDN 加速原理与落地实践
文章目录 一、思维导图二、正文内容(一)CDN 基础概念1. 定义2. 组成部分 (二)CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 (三)CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 …...
Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...
Java 二维码
Java 二维码 **技术:**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...
【JVM面试篇】高频八股汇总——类加载和类加载器
目录 1. 讲一下类加载过程? 2. Java创建对象的过程? 3. 对象的生命周期? 4. 类加载器有哪些? 5. 双亲委派模型的作用(好处)? 6. 讲一下类的加载和双亲委派原则? 7. 双亲委派模…...
JavaScript 数据类型详解
JavaScript 数据类型详解 JavaScript 数据类型分为 原始类型(Primitive) 和 对象类型(Object) 两大类,共 8 种(ES11): 一、原始类型(7种) 1. undefined 定…...
wpf在image控件上快速显示内存图像
wpf在image控件上快速显示内存图像https://www.cnblogs.com/haodafeng/p/10431387.html 如果你在寻找能够快速在image控件刷新大图像(比如分辨率3000*3000的图像)的办法,尤其是想把内存中的裸数据(只有图像的数据,不包…...
[特殊字符] 手撸 Redis 互斥锁那些坑
📖 手撸 Redis 互斥锁那些坑 最近搞业务遇到高并发下同一个 key 的互斥操作,想实现分布式环境下的互斥锁。于是私下顺手手撸了个基于 Redis 的简单互斥锁,也顺便跟 Redisson 的 RLock 机制对比了下,记录一波,别踩我踩过…...
