WSL

开源/开放软件在企业中的应用,如AI应用 只有能对接才能按需定制。

要求 win10 版本 2004(19041)


前提条件

开启和关闭windows功能

  • 适用于linux的windows 子系统

  • 虚拟机平台

    dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart
    
    dism.exe /online /enable-feature /featurename:VirtualMachinePlatform /all /norestart
    

安装

管理员窗口执行

wsl -l --online
wsl --set-default-version 2
wsl --install -d Ubuntu-22.04

手动下载

查看虚拟linux

wsl -l -v

卸载

wsl --unregister Ubuntu

重启wsl虚拟服务

 wsl --shutdown

后台启动指定版本

wsl -d Ubuntu-22.04

运行docker

WSL2下安装Docker-CE

sudo vi /etc/wsl.conf
[boot]
systemd=true

重启wls

 wsl --shutdown
 wsl -d Ubuntu-22.04

修改dns

sudo nano /etc/resolv.conf

关闭防火墙

sudo /etc/init.d/ufw stop

python3 -m http.server 9005
sudo tcpdump -i eth0 port 1314  -vvv -nn

安装ssh

sudo apt update
sudo apt install openssh-server
 
sudo systemctl enable ssh
sudo systemctl start ssh

安装docker

sudo apt  -y install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -

curl -fsSL https://download.docker.com/linux/ubuntu/gpg  | sudo apt-key add -
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"


sudo apt update
sudo apt-get install docker-ce  docker-compose

修改源

sudo vi  /etc/docker/daemon.json


 {
       "registry-mirrors": [
          "https://2a6bf1988cb6428c877f723ec7530dbc.mirror.swr.myhuaweicloud.com",
          "https://docker.m.daocloud.io",
          "https://dockerhub.icu",
          "https://dockercf.jsdelivr.fyi",
          "https://docker.jsdelivr.fyi",
          "https://dockertest.jsdelivr.fyi",
          "https://dockerproxy.com",
          "https://docker.m.daocloud.io",
          "https://mirror.iscas.ac.cn",
          "https://docker.rainbond.cc"
          ]
      }

生效

 sudo systemctl daemon-reload
 
 sudo systemctl restart docker

测试

sudo docker run hello-world

使用podman

安装

sudo apt install podman

sudo apt install python3-pip
sudo pip3 install podman-compose

运行hello world

podman run hello-world
podman ps

配置源

nano /etc/containers/registries.conf

unqualified-search-registries = ["docker.io"]

[[registry]]
prefix = "docker.io"
location = "docker.jsdelivr.fyi"
insecure = true

[[registry.mirror]]
# xx
location = "docker.jsdelivr.fyi"
insecure = true
[[registry.mirror]]
# xx
location = "dockercf.jsdelivr.fyi"
insecure = true
[[registry.mirror]]
# xx
location = "dockerproxy.com"
insecure = true
[[registry.mirror]]
# xx
location = "mirror.iscas.ac.cn"
insecure = true


编排

podman-compose

podman-compose --version
podman-compose up -d

启动

podman-compose -f custom-compose.yml up -d

关闭

podman-compose -f custom-compose.yml down

重启

podman-compose -f custom-compose.yml restart

查看日志

podman-compose -f custom-compose.yml logs

图形化

Portainer连接podman 使用9443端口

启用api服务

sudo systemctl enable --now podman.socket
sudo systemctl start --now podman.socket
sudo podman run -d -p 9443:9443 --privileged -v /run/podman/podman.sock:/var/run/docker.sock:Z portainer/portainer-ce
sudo podman run  -d   --name prtainer-pod --privileged  --restart=always  -p 9009:9000  -v /run/podman/podman.sock:/var/run/docker.sock docker.m.daocloud.io/portainer/portainer

查看运行的服务

sudo lsof -i -n 

通过本地地址来访问

http://localhost:9009/

部署n8n自动化

docker run -d \
  --name n8n \
  -p 5678:5678 \
  -v /opt/n8n:/home/node/.n8n \
  n8nio/n8n
 docker exec -it n8n /bin/sh
  • 使用 bcrypt 生成密码

  • 用SQLite 更新值

https://bcrypt-generator.com/   在线密码生成
sqlite3 /opt/n8n/./database.sqlite

用sql更新

UPDATE user 
SET password = '$2a$10$YtSav6DxAawTzK9RyUFt6eKbkSJcBXR8i8o7rob9puoeZ5pRy7pRC' 
WHERE email = 'jack2nb@qq.com';

DLNA串流

就是遥控播放

开启 SSDP Discovery,UPnP Device Host 服务
wmp 播放器 .媒体流.允许远程控制我的播放器

foobar2000 v2.24 32位 +插件(foo_upnp,foo_out_upnp) 设置输出

开源AD服务

mkdir /opt/samba-ad
chmod 777 /opt/samba-ad
cd /opt/samba-ad
nano docker-compose.yml
systemctl stop systemd-resolved
systemctl disable   systemd-resolved  #//避免端口冲突

version: '3.8'

services:
  samba-ad:
    image: nowsci/samba-domain
    container_name: samba-ad
    hostname: samba-ad
    environment:
      - DOMAIN=abc.com
      - ADMIN_PASSWORD=Ad.password
      - DNS_FORWARDER=8.8.8.8
    ports:
      - "53:53"           # DNS
      - "88:88"           # Kerberos
      - "135:135"         # RPC
      - "139:139"         # NetBIOS
      - "389:389"         # LDAP
      - "445:445"         # SMB
      - "464:464"         # Kerberos password change
      - "636:636"         # LDAPS
      - "3268:3268"       # Global Catalog LDAP
      - "3269:3269"       # Global Catalog LDAPS
    volumes:
      - ./samba-data:/var/lib/samba
      - ./etc-samba:/etc/samba
    restart: unless-stopped
docker-compose up -d
 docker exec -it samba-ad  /bin/sh
 docker logs samba-ad