WSL2.0 安装、自定义目录、docker、开机+docker自启、报错教程 您所在的位置:网站首页 docker开机启动脚本 WSL2.0 安装、自定义目录、docker、开机+docker自启、报错教程

WSL2.0 安装、自定义目录、docker、开机+docker自启、报错教程

2023-09-09 13:14| 来源: 网络整理| 查看: 265

目录WSL2.0 安装到自定义目录安装WSL2.0安装Ubuntu默认版安装指定版本微软商店安装迁移到指定目录下载迁移工具开始迁移迁移报错解决方案Ubuntu安装DockerUbuntu修改DNSDocker 开机自启Docker服务设置自动启动查看已启动的服务查看是否设置开机启动设置开机启动关闭开机启动Docker容器设置自动启动启动时加--restart=always如果已经过运行的项目WSL2+Docker 开机自启WSL2内操作Windows内操作从 Linux(主机 IP)访问 Windows 网络应用APT报错解决方法WSL常用命令

WSL2.0 安装到自定义目录 安装WSL2.0

官网安装教学链接https://docs.microsoft.com/zh-cn/windows/wsl/install

安装Ubuntu默认版

默认安装Ubuntu

wsl --install 安装指定版本 查看所有可以使用的版本 wsl --list --online 安装指定版本 wsl --install -d 微软商店安装

商店搜索Ubuntu 安装自己喜欢的即可

迁移到指定目录 下载迁移工具

开源地址:https://github.com/DDoSolitary/LxRunOffline

开始迁移 打开LxRunOffline安装目录的Cmd 查看系统中安装了那些wsl

第一种方法使用工具命令查看

LxRunOffline.exe list

第二种方法使用WSL命令行查看

wsl -l -v 使用LxRunoffline的命令进行迁移

-n 参数:需要迁移那个版本 ,这里迁移的是Ubuntu版本

-d 参数:需要迁移到那个目录 ,迁移到D:\LocalEnvironment\WSL2\Ubuntu\

.\LxRunOffline.exe move -n Ubuntu -d D:\LocalEnvironment\WSL2\Ubuntu\ 迁移报错解决方案

关于迁移报错这篇文章写的非常详细,推荐食用。

参考网址:https://www.pudn.com/news/6242d03bd62d7b1199bc5d32.html

Ubuntu安装Docker

也可以使用国内 daocloud 一键安装命令:

curl -sSL https://get.daocloud.io/docker | sh Ubuntu修改DNS

直接执行docker安装、sudo apt-get update 会报错,原因是DNS解析没有配置好。解决方法如下:

sudo vi /etc/resolv.conf

添加DNS

# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8) # DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN nameserver 127.0.1.1 #这里用的是阿里云的DNS服务器 nameserver 223.5.5.5 nameserver 223.6.6.6

之后执行sudo apt-get update就正常了。

Docker 开机自启 Docker服务设置自动启动

说明:适用于yum安装的各种服务

查看已启动的服务 systemctl list-units --type=service 查看是否设置开机启动 systemctl list-unit-files | grep enable 设置开机启动 systemctl enable docker.service 关闭开机启动 systemctl disable docker.service Docker容器设置自动启动 启动时加--restart=always docker run -tid --name isaler_v0.0.11 -p 8081:8080 --restart=always -v /alidata/iDocker/run/projectImages/isaler/v0.0.11/log:/usr/local/tomcat/logs isaler_v0.0.11 Flag Description no 不自动重启容器. (默认value) on-failure 容器发生error而退出(容器退出状态不为0)重启容器 unless-stopped 在容器已经stop掉或Docker stoped/restarted的时候才重启容器 always 在容器已经stop掉或Docker stoped/restarted的时候才重启容器 如果已经过运行的项目 如果已经启动的项目,则使用update更新: docker update --restart=always isaler_v0.0.11 WSL2+Docker 开机自启 WSL2内操作 命令行输入 sudo vim /etc/init.wsl 按‘I’或‘A’进入编辑模式,输入以下内容 #! /bin/sh service docker start

注:这里可放入其它Linux命令

按‘Esc’退出编辑模式,输入以下命令保存并退出 :wq! 赋予文件可执行权限 sudo chmod +x /etc/init.wsl Windows内操作 创建txt文件,并输入以下内容 Set ws = WScript.CreateObject("WScript.Shell") ws.run "wsl -d ubuntu -u root /etc/init.wsl"

注:其中‘ubuntu’为WSL2子系统的名字

保存并重命名,这里为‘linux-start.vbs’,保证格式为.vbs即可 按 win+R 输入 shell:startup 将以上vbs文件放入该目录

原文链接

从 Linux(主机 IP)访问 Windows 网络应用

如果要从 Linux 分发版(即 Ubuntu)访问 Windows 上运行的网络应用(例如,在 NodeJS 或 SQL 服务器上运行的应用),则需要使用主机的 IP 地址。 虽然这不是一种常见方案,但你可以执行以下步骤来使其可行。

通过在 Linux 分发版中运行以下命令来获取主机的 IP 地址:cat /etc/resolv.conf 复制以下词语后面的 IP 地址:nameserver。 使用复制的 IP 地址连接到任何 Windows 服务器。

下图显示了一个示例,该示例说明如何通过 curl 连接到在 Windows 中运行的 Node.js 服务器。

Connect to NodeJS server in Windows via Curl

APT报错解决方法

今天安装任何软件都是报这个错误,跟着网上的教程各种尝试都没有解决,最后是通过修改DNS完成的,这里记录下:

E: Failed to fetch http://mirrors.tuna.tsinghua.edu.cn/ubuntu/pool/main/g/glew/libglew-dev_1.13.02_amd64.deb Temporary failure resolving ‘mirrors.tuna.tsinghua.edu.cn’

E: Unable to fetch some archives, maybe run apt-get update or try with --fix-missing?

解决方案:

进入配置文件,修改DNS。

sudo vi /etc/resolv.conf

这里使用阿里的

# This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry to /etc/wsl.conf: # [network] # generateResolvConf = false nameserver 172.27.32.1 nameserver 223.5.5.5 nameserver 223.6.6.6

其他的解决方案删除文件之类的,百度一大堆就不赘述了,哪些方法试了都没解决。

注:更改清华源需要注意匹配自己的系统版本。

WSL常用命令 列出分发版本 wsl -l -v 关闭指定版本 wsl -t Ubuntu 启动指定版本 wsl -d Ubuntu


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有