栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

golang开发者的win+Ubuntu+docker+xshell连接

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

golang开发者的win+Ubuntu+docker+xshell连接

    1. 先在win左下角找到设置,搜索开发者模式
    2. 控制面板搜索:启用或关闭功能中选中:适用于linux子系统的win子系统
    3. 在微软商店中搜Ubuntu下载安装
    4. 之后win d盘对应Ubuntu /mnt/d
    5. 默认的wsl没有设置root密码,设置管理员: sudo passwd root. 来设置root密码
    6. 下载好go和gcc之后 修改path:cd ~; sudo vi ~/.profile ;sudo source ~/.profile
      1. export GOPATH=/mnt/d/gopath/src/
      2. export GOROOT=/mnt/d/tool/go
      3. export PATH=$PATH:$GOROOT/bin
    7. 使用xshell登录win子系统

#sudo apt-get remove --purge openssh-server ## 先删ssh
#sudo apt-get install openssh-server ## 在安装ssh

#sudo rm /etc/ssh/ssh_config ## 删配置文件,让ssh服务自己想办法链接
#sudo service ssh --full-restart 重启ssh

    1. 安装文件在/etc/ssh/sshd_config 配置之后重启
      1. #设置root的口令(密码),用作后续登陆使用
        sudo passwd root
        #安装openssh-server(似乎ubuntu自带已安装)
        sudo apt install openssh-server
        #备份很重要
        sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
        #使用vim进行编辑,按i进入insert模式
        sudo vim /etc/ssh/sshd_config
        在vim中分别找到并对应修改四处,修改后ESC,输入wq保存退出,具体如下:
        Port 2222
        ListenAddress 0.0.0.0 # 如果需要指定监听的IP则去除最左侧的井号,并配置对应IP,默认即监听PC所有IP
        PermitRootLogin yes # 如果你需要用 root 直接登录系统则此处改为 yes
        PasswordAuthentication yes # 将 no 改为 yes 表示使用帐号密码方式登录
      2. 启动(之后启动cmd输入bash,用xshell连接,连接不上重启ssh:sudo service ssh --full-restart)
        1. sudo service ssh start #启动SSH服务
          sudo service ssh status #检查状态
          sudo systemctl enable ssh #开机自动启动ssh命令
    2. docker
      1. 推荐
        1. curl -O https://download.docker.com/linux/ubuntu/dists/xenial/pool/stable/amd64/docker-ce_17.09.0~ce-0~ubuntu_amd64.deb (必须此版本)
        2. sudo dpkg -i docker-ce_17.09.0~ce-0~ubuntu_amd64.deb
        3. sudo apt -y -f install
        4. -修改docker权限(非必须)
        5. sudo usermod -aG docker $USER
        6. # 安装cgroupfs-mount
        7. sudo apt -y install cgroupfs-mount
        8. -以管理员身份启动WSL控制台,执行以下命令启动docker
        9. sudo cgroupfs-mount
        10. sudo service docker start
        11. 到此测试docker run hello-world
        12. 需要注意的是每次电脑重启后先执行cgroupfs-mount再启动docker服务。
        13. 期间遇到问题
          1. 卸载包不干净:提示docker-ce需要卸载但是找不到文件
          2. //备份/var/lib/dpkg/status文件
            sudo cp /var/lib/dpkg/status status.bkp
            //编辑该文件
            sudo vim /var/lib/dpkg/status
            //定位到出错的软件包,将该软件包的记录删除,保存,就完成了。
          3. 安装包下载不全安装时就会提示 pipe: unexpected end of file or stream
        14. 连接公司私有仓库
          1. dcoker配置映射环境:
          2. /etc/hosts x.x.x.x docker-registry
          3. 因为子系统中host是映射win的,直接修改不起作用,所以修改win中的

1、window环境:

hosts文件位置:C:windowssystem32driversetc

修改host时候注意空格:正确格式

刷新方式:

win+r,输入CMD,回车

在命令行执行:ipconfig /flushdns #清除DNS缓存内容。

ps:ipconfig /displaydns //显示DNS缓存内容

{补充:linux环境文件位置:/etc/hosts;刷新命令:systemctl restart nscd}

    1. 访问默认是https拉取镜像,以下配置可以不确认证书而拉取
      1. /etc/docker/daemon.json { "insecure-registries":["docker-registry:5000"] }(没有文件就添加)

    1. 遇到情况是:xshell连接不上windocker.但是原本子系统Ubuntu可以,而且windocker命令可能不全.所以弃用,改用以上方案
      1. apt install http://docker.io
      2. 环境变量文件在~/.bashrc ~/.bash-profile
        1. export DOCKER_HOST=tcp://127.0.0.1:2375
        2. 补充:因为子系统中host是映射win的,直接修改不起作用,所以修改win中的

1、window环境:

hosts文件位置:C:windowssystem32driversetc

修改host时候注意空格:正确格式

刷新方式:

win+r,输入CMD,回车

在命令行执行:ipconfig /flushdns #清除DNS缓存内容。

ps:ipconfig /displaydns //显示DNS缓存内容

2、linux环境

文件位置:/etc/hosts

刷新命令:systemctl restart nscd

    1. 配置之后source ~/.bashrc就会发现可以Ubuntu看到docker
    2. dcoker配置映射环境:
      1. /etc/hosts x.x.x.x docker-registry
      2. /etc/docker/daemon.json { "insecure-registries":["docker-registry:5000"] }(windocker 是直接在 setting docker engine中配置)
    3. 这一步中前提条件有:打开开发者模式,Hyper-V和虚拟化功能.
    4. 安装虚拟化命令
      1. 将如下代码添加到记事本中,并另存为Hyper-V.cmd文件
      2. pushd "%~dp0"
        dir /b %SystemRoot%servicingPackages*Hyper-V*.mum >hyper-v.txt
        for /f %%i in ('findstr /i . hyper-v.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%servicingPackages%%i"
        del hyper-v.txt
        Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL
      3. 管理员运行 y重启电脑,win设置中-启用关闭win功能中勾选Hyper-V和虚拟化功能
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/388820.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号