m1k1o/neko是一个基于docker的集成了直播聊天和浏览器的跨平台远程桌面环境,官方的默认image中对内置的浏览器有一些定制化的限制,在国内环境中不是很好用,例如无法访问Web Store,无法安装插件。
下面就来解决在neko中无法安装插件的问题
环境
方案
- 自建crx插件服务器
- 在创建容器时指定本地policy配置文件
详细过程可参考:如何自建crx下载和更新服务器
步骤
在本地路径准备policies.json,例D:\docker\chrome\policies.json
编辑policies.json文件
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
{ "ExtensionInstallSources": [ "*://minir.plus/*", ], "ExtensionSettings": { "bfmgdnjlifbmedglimhnbhgkefanaiep": { // Video-Styler--brightness-and-more "installation_mode": "force_installed", "update_url": "https://minir.plus/crx", "override_update_url": true, "toolbar_pin": "force_pinned" }, "cfhdojbkjhnklbpkdaibdccddilifddb": { // Adblock-Plus---free-ad-blocker "installation_mode": "force_installed", "update_url": "https://minir.plus/crx", "override_update_url": true, "toolbar_pin": "force_pinned" }, "padekgcemlokbadohgkifijomclgjgif": { // Proxy SwitchyOmega "installation_mode": "force_installed", "update_url": "https://minir.plus/crx", "override_update_url": true, "toolbar_pin": "force_pinned" }, } } |
其中
installation_mode
- force_installed – 系统会自动安装该扩展程序,无需用户进行任何操作。用户无法移除该扩展程序。您还需要使用 update_url 指定扩展程序的下载位置。
注意:请勿使用 * 设置默认配置,因为这样会导致 Chrome 浏览器无法确定应自动安装哪个扩展程序。 - normal_installed – 系统会自动安装该扩展程序,无需用户进行任何操作。用户可以停用该扩展程序。您还需要使用 update_url 指定扩展程序的下载位置。
注意:请勿使用 * 设置默认配置,因为这样会导致 Chrome 浏览器无法确定应自动安装哪个扩展程序。
update_url
- https://clients2.google.com/service/update2/crx – 扩展程序由 Chrome 网上应用店托管
- https://minir.plus/crx – 扩展程序由自建crx服务器托管,此处输入自建的crx服务器调用地址
override_update_url
- 指定 Chrome 使用 update_url 字段中的网址更新插件,否则后续更新会切换至使用Chrome 网上应用店。
toolbar_pin
- force_pinned – 扩展程序图标会固定到工具栏中,并始终可见。用户无法将其隐藏在扩展程序菜单中。
- default_unpinned – 扩展程序默认隐藏在扩展程序菜单中,不过用户可以将其固定到工具栏中。
注意
- policy中的预设插件均无法被删除
- 首次进入chrome时需要等待5-10秒,待插件下载完毕后会自动开始安装插件
测试
在本地docker for windows环境中运行
1 |
docker run -d --name neko -p 8080:8080 -p 52000-52100:52000-52100/udp -e NEKO_PASSWORD='neko' -e NEKO_PASSWORD_ADMIN='admin' -e NEKO_EPR='52000-52100' -e NEKO_ICELITE='1' -e NEKO_NAT1TO1='127.0.0.1' --cap-add SYS_ADMIN --shm-size=2gb -v D:\docker\chrome\policies.json:/etc/opt/chrome/policies/managed/policies.json m1k1o/neko:google-chrome |
在本地浏览器中访问:http://localhost:8080/
使用任意用户名,密码输入admin
等待3-10秒后,将自动开始安装policy中配置的预设插件
4 comments