技术标签: Linux wsl2 linux 踩坑 docker
进入docker官网:https://docs.docker.com/engine/install/ubuntu/ 这里有安装步骤
第一步:Update the apt package index and install packages to allow apt to use a repository over HTTPS:
sudo apt-get update
sudo apt-get install \
ca-certificates \
curl \
gnupg \
lsb-release
第二步:Add Docker’s official GPG key:
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
第三步:Use the following command to set up the stable repository.
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
第四步:安装docker engine
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
第五步:查看docker是否安装成功
docker -v
Docker version 20.10.14, build a224086
遇到问题:
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
解决方法:
请输入
systemctl start docker
如果遇到问题:
[email protected]:/mnt/e/shizheng_coding/nlp_beginner$ systemctl start docker
System has not been booted with systemd as init system (PID 1). Can't operate.
解决方法如下:
输入如下命令
ps -p 1 -o comm=
如果返回init,则执行下面命令即可解决
service docker start
* Docker must be run as root
使用sudo权限即可:
$ sudo service docker start
* Starting Docker: docker
将当前用户添加到docker用户组
为了避免每次使用docker命令都需要加上sudo权限,可以将当前用户加入安装中自动创建的docker用户组(可以参考官方文档):
sudo usermod -aG docker $USER
然后查看一下镜像,执行成功
docker images
wsl2版本
在powershell中输入以下命令可以看到wsl的版本:这里是wsl2
PS E:\shizheng_coding\nlp_beginner> wsl cat /proc/version
Linux version 5.10.16.3-microsoft-standard-WSL2 ([email protected]) (x86_64-msft-linux-gcc (GCC) 9.3.0, GNU ld (GNU Binutils) 2.34.0.20200220) #1 SMP Fri Apr 2 22:23:49 UTC 2021
wsl查看安装的linux发行版,在powershell中输入
PS E:\shizheng_coding\nlp_beginner> wsl --list
适用于 Linux 的 Windows 子系统分发版:
Ubuntu-18.04 (默认)
查看wsl的状态
PS E:\shizheng_coding\nlp_beginner> wsl --status
默认分发: Ubuntu-18.04
默认版本: 2
WSL 版本: 0.58.3.0
内核版本: 5.10.102.1
WSLg 版本: 1.0.33
MSRDC 版本: 1.2.2924
Direct3D 版本: 1.601.0
Windows 版本: 10.0.22598.200
ubuntu如何查看已安装的软件
dpkg -l
docker官网安装:Install Docker Engine on Ubuntu
(using WSL ubuntu app) system has not been booted with system as init system (PID 1). Can’t operate
1.申请一个ipv6地址https://www.tunnelbroker.net/创建通道Create Regular Tunnel1.1 创建一个账号1.2 填写你 ECS 的公网 IP 地址以及选择隧道节点,点击 Create Tunnel 创建。注:填写 IP 时出现 IP is a potential tunnel endpoint. 说明可以添加 ipv6 隧道。1....
设计模式什么是设计模式设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。为什么要学习设计模式看懂源代码:如果你不懂设计模式去看Jdk、Spring、SpringMVC、IO等等等等的源码,你会很迷茫,你会寸步难行看看前辈的代码:你去个公司难道都是新项目让你接手?很有可能是接盘的,前辈的开发难道不用设计模式?编写自己的理想中的好代码:我个人反正是这样的,对于我自己开发的项目我会很认
Spring boot + jpa
一、社区版Phoenix时间相关类型介绍时间数据处理是数据开发者经常遇到的问题,众所周知时间都是跟时区相关的,如果对于时区处理不当,会造成时间数据错误,进而引入一系列棘手的问题。Phoenix中跟时间相关的类型有TIMESTAMP,DATE和TIME,这些类型对于时区的处理逻辑是相同的,后面笔者就以TIMESTAMP类型为例来说明Phoenix关于时区...
1.注册事件概述给元素添加事件,称为注册事件或者绑定事件注册事件方式有两种:传统方式和方法监听注册方式传统注册方式利用on开头的事件 如 onclick;<button onclick="alert('hi~')"></button>btn.οnclick=function(){}特点:注册事件的唯一性同一个元素同一个事件只能设置一个处理函数,最后注册的处理函数将会覆盖前面注册的处理函数;var btn=document.querySelectorAll("bo
http://laokaddk.blog.51cto.com/368606/1363827FLAG_ACTIVITY_CLEAR_TASK :如果在调用Context.startActivity时传递这个标记,将会导致任何用来放置该activity的已经存在的task里面的已经存在的activity先清空,然后该activity再在该task中启动,也就是说,这个新启动的a
总结:IOC即依赖注入,IOC常见的注入形式有三种:构造函数时注入,set方法注入,调用真正的业务函数时以入参注入(最原始的方法)下文对于IOC的注入原理和方式讲的比较清晰了,这里再补充一种注入框架:包括使用自定义注解标记欲注入的属性,根据注解注入的机制实现。自定义注解标记欲注入的属性:首先需要定义一个注解例如MyIOC,然后在类中需要注意的属性上标记@MyIOC,然后添加se
package com.xiaojianbang.xposed;import android.util.Log;import de.robv.android.xposed.IXposedHookLoadPackage;import de.robv.android.xposed.XC_MethodHook;import de.robv.android.xposed.XC_MethodHoo...
Linux限制端口1 firewall-cmd方式查看防火墙状态开放端口限制端口批量开放/限制端口限制IP地址访问开放IP地址访问限制IP地址段开放与限制IP访问只限制IP不限制端口限制IP与一段端口2 iptables方式查看防火墙状态开放端口限制端口批量开放/限制端口限制IP地址访问开放IP地址访问限制IP地址段经验1 firewall-cmd方式查看防火墙状态systemctl status firewalld这说明服务是启动着的。设置启动/关闭 开机自启一般需要重启一下机器,不然后
java8的lambda表达式提供了一些方便list操作的方法,主要涵盖分组、过滤、求和、最值、排序、去重。跟之前的传统写法对比,能少写不少代码。新建实体类1 package com.vvvtimes.vo;23 import java.math.BigDecimal;4 import java.util.Date;5 6 public class User {7 8 private Long id;9 10 //姓名 11 private String
有向图邻接表,自我感觉比邻接矩阵要理解复杂一点,但是节省的空间不是小数目,所以虽然复杂,但是我们还是要优先考虑邻接表吧。 下面代码简单的写了邻接表,但是基本核心的代码全部包括了,之后图中加权的我也在代码中有所涉及,我们只要更一些参数就可以。基本符合所有要求了吧。输入: 4 5 a b c d 0 3 1 0 1 2 2 0 2 1
1.概念DWR(Direct Web Remoting)是一个web远程调用框架,利用这个框架可以让ajax开发变得很简单,利用DWR可以在客户端利用JavaScript调用服务器端的java方法并返回值给JavaScript,就好像直接本地客户端调用一样,其实大家知道 JavaScript 是客户端的脚本语言,怎么可以调用服务器端的Java方法,因为DWR根据java类 来动态生成JavaS