首页
关于
Search
1
AdGuardHome 安装及部署教程
45,083 阅读
2
关于微软Azure学生白嫖指南
11,389 阅读
3
Oracle开放全部端口并关闭防火墙
11,159 阅读
4
搭建基于telegram的无限网盘
10,941 阅读
5
最新Cloudflare免费自选IP教程(非Partner)
9,920 阅读
默认分类
技术搬砖
教学设计
故事奇谈
生活琐事
错题分析
精品软件
登录
找到
1
篇与
neko
相关的结果
2025-05-07
Docker部署虚拟在线浏览器neko
Docker部署虚拟在线浏览器neko 欢迎来到 Neko,这是一个在 Docker 中运行并使用 WebRTC 技术的自托管虚拟浏览器。Neko 是一个强大的工具,允许您在虚拟环境中运行一个功能齐全的浏览器,让您能够从任何地方安全和私密地访问互联网。使用 Neko,您可以浏览网页、运行应用程序和执行其他任务,就像在普通浏览器上一样,所有这些都在一个安全和隔离的环境中进行。无论您是希望测试 web 应用程序的开发人员,还是寻求安全浏览体验的注重隐私的用户,或者只是想利用虚拟浏览器的便利性和灵活性的人,Neko 都是完美的解决方案。项目 GitHub:m1k1o/neko: A self hosted virtual browser that runs in docker and uses WebRTC. 项目 doc:Getting Started (m1k1o.net) 配置需求: 分辨率CPU Cores内存推荐意见1024×576@3022gb一般1280×720@3043gb可以1280×720@3064gb推荐1280×720@3084gb+最佳这里使用的服务器配置:2Cores 2GB Ubuntu22.04。如果只是用来浏览网页的话,CPU 和内存的占用不会太高,1C1G 加个 1Gswap 就够了。如果你要看视频之类的,可能需要更高的配置,推荐 2C 以上。 此项目强烈推荐使用域名并开启 SSL,否则可能会出现未知错误。 在开始部署之前,你需要安装 docker 和 docker-compose 一、安装基础环境 1、更新源 yum update -y && yum upgrade -y #Centos执行这条命令 apt update -y && apt upgrade -y #Ubuntu/Debian执行这条命令2、安装docker及docker compose curl -fsSL https://get.docker.com -o get-docker.sh && sh ./get-docker.sh3、检查docker是否安装成功 #以下即为安装成功 root@debian-4gb-fsn1-2:~# docker compose version Docker Compose version v2.17.2 root@debian-4gb-fsn1-2:~# docker -v Docker version 23.0.2, build 569dd73二、添加虚拟内存 如果你机器内存够就不需要加虚拟内存 1、脚本一键添加,单位是MB wget -O jcnfbox.sh https://raw.githubusercontent.com/Netflixxp/jcnf-box/main/jcnfbox.sh && chmod +x jcnfbox.sh && clear && ./jcnfbox.sh2、手动添加 创建 1G 的 swap,可以根据你的服务器配置来调整大小 dd if=/dev/zero of=/mnt/swap bs=1M count=1024设置交换分区文件 mkswap /mnt/swap启动 swap swapon /mnt/swap设置开机时自启用 swap 分区 需要修改文件 /etc/fstab 中的 swap 行 vim /etc/fstab添加 /mnt/swap swap swap defaults 0 0三、docker compose安装neko 本次使用火狐内核版本m1k1o/neko:firefox,其余可选择谷歌内核版本m1k1o/neko:chromium,树莓派版本m1k1o/neko:arm-chromium 创建文件夹: mkdir -p /home/neko/ && cd /home/neko/创建配置文件: vim docker-compose.yml主要修改NEKO_NAT1TO1为自己服务器IP地址,其余部分可根据下面给的环境变量说明自行修改 英文输入法下按 i 进入编辑模式后,在这个配置文件的最后加入: version: "3.8" services: neko: image: "m1k1o/neko:firefox" container_name: "neko" restart: "always" shm_size: "2gb" ports: - "38080:8080" - "52000-52100:52000-52100/udp" environment: NEKO_SCREEN: 1920x1080@30 NEKO_PASSWORD: neko NEKO_PASSWORD_ADMIN: admin NEKO_NAT1TO1: 192.168.3.166 NEKO_EPR: 52000-52100 NEKO_ICELITE: 1 | 参数名称 | 描述 | 示例值/说明 | |----------------------|--------------------------------------------------------------|-----------------------------------------------------------------| | `--shm-size=2gb` | 设置共享内存大小为 2GB,此设置为必须。 | | | `--cap-add SYS_ADMIN` | 使用 Chromium 内核时需添加,以获取必要的系统管理权限。 | | | `NEKO_PASSWORD` | 普通用户的登录密码。 | `mySecurePass123` | | `NEKO_PASSWORD_ADMIN` | 管理员(admin)用户的登录密码。 | `AdminSecurePass456` | | `NEKO_NAT1TO1` | 局域网使用时设置为服务器本地 IP,公网则自动获取公网 IP,可选。 | `192.168.3.166` 或留空自动获取 | | `NEKO_SCREEN` | 自定义浏览器窗口分辨率。 | `1920x1080` | | `NEKO_ICELITE` | 启用 Ice Lite 协议以优化连接性能,可选。 | `true` 或留空默认值 | | `NEKO_EPR` | 设置 WebRTC 的 UDP 端口范围,用于P2P连接。 | `52000-52100` | | `NEKO_FILE_TRANSFER_ENABLED` | 启用文件传输功能,需要设置为 `true`。 | `true` 或默认 `false` 如果不需要启用文件传输功能 | ```按 esc 后,输入:wq 保存退出。 运行: docker-compose up -d访问 ip:38080 或者是你的域名就可以进入到 neko 浏览器了,我们使用管理员密码登录: 图片 默认界面: 图片 基本使用: 图片 四、neko room neko room是另外的一个工具,可以批量添加多个不同浏览器选择一个域名解析到vps的IP 下载neko room安装脚本 wget -O neko-rooms.sh https://raw.githubusercontent.com/m1k1o/neko-rooms/master/traefik/install执行脚本 sudo bash neko-rooms.sh直接回车表示使用默认配置 脚本会自动申请证书,通过填入的域名访问 expert setting 可以添加环境变量、对CPU和内存设置资源限制、启用GPUimage图片 1、所有人都有控制权,可以同时控制屏幕,无需请求 neko room:开启 NEKO\_IMPLICIT\_CONTROL docker compose运行的neko:在compose文件的环境变量加上 NEKO\_IMPLICIT\_CONTROL: true 2、复制粘贴,同时需要使用https,另外一些浏览器例如firefox不支持 neko或neko-room添加环境变量 NEKO\_FILE\_TRANSFER\_ENABLED: true3、neko反代设置 server { listen 443 ssl http2; server_name example.com; location / { proxy_pass http://127.0.0.1:8080; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_cache_bypass $http_upgrade; } }4、安装浏览器扩展或下载文件 参考: Chrome policies:https://support.google.com/chrome/a/answer/7579271?hl=en 作者为了安全默认禁止下载文件 禁止安装扩展(https://github.com/m1k1o/neko/issues/114#issuecomment-988309991) For security, if the browser would be compromised, installing any extension could potentially allow anyone to access filesystem or steal all cookies, inject malware to any page… 但我们一般不在乎那些,可以根据官方教程手动修改 chrome polices 以 Chromium 为例 1、在vps新建一个 policies.json 文件,可以填入如下政策 这里文件添加在 `/root/policies.json` { "AutofillAddressEnabled": false, "AutofillCreditCardEnabled": false, "BrowserSignin": 0, "DefaultNotificationsSetting": 2, "DeveloperToolsAvailability": 2, "EditBookmarksEnabled": false, "FullscreenAllowed": true, "IncognitoModeAvailability": 1, "SyncDisabled": true, "AutoplayAllowed": true, "BrowserAddPersonEnabled": false, "BrowserGuestModeEnabled": false, "DefaultPopupsSetting": 2, "DownloadRestrictions": 0, "VideoCaptureAllowed": true, "AllowFileSelectionDialogs": false, "PromptForDownloadLocation": false, "BookmarkBarEnabled": false, "PasswordManagerEnabled": false, "BrowserLabsEnabled": false, "URLAllowlist": [ "file:///home/neko/Downloads", "file://*", "chrome://policy" ], "ExtensionInstallForcelist": [ "cjpalhdlnbpafiamejdnhcphjbkeiagm;https://clients2.google.com/service/update2/crx", "mnjggcdmjocbbbhaepdhchncahnbgone;https://clients2.google.com/service/update2/crx" ], "ExtensionInstallAllowlist": [ "cjpalhdlnbpafiamejdnhcphjbkeiagm", "mnjggcdmjocbbbhaepdhchncahnbgone", "padekgcemlokbadohgkifijomclgjgif" ] }然后替换 Chromium 原本严格的政策 #容器ID'13f53eaa2252' 记得替换为你自己的 #/root/policies.json 也是替换为你文件路径 docker cp /root/policies.json 13f53eaa2252:/etc/chromium/policies/managed/policies.json然后就可以下载安装扩展了 image图片 5、甲骨文arm运行 ghcr.io/m1k1o/neko/arm-firefox:latest ghcr.io/m1k1o/neko/arm-chromium:latest ghcr.io/m1k1o/neko/arm-ungoogled-chromium:latest ghcr.io/m1k1o/neko/arm-vlc:latest ghcr.io/m1k1o/neko/arm-xfce:latest五、整体评价 1、优点 可以装逼 网络没问题的情况下非常流畅,在线看视频是没有问题的 2、缺点 需要配置较高的 vps 才能流畅运行 网络要求高,需要线路较好的 vps,反代不方便 中文输入支持不好 移动端优化不足
技术搬砖
# docker
# neko
admin
2天前
0
9
0