首页
关于
Search
1
AdGuardHome 安装及部署教程
45,706 阅读
2
关于微软Azure学生白嫖指南
11,609 阅读
3
Oracle开放全部端口并关闭防火墙
11,350 阅读
4
搭建基于telegram的无限网盘
11,080 阅读
5
最新Cloudflare免费自选IP教程(非Partner)
9,965 阅读
默认分类
技术搬砖
教学设计
故事奇谈
生活琐事
错题分析
精品软件
登录
找到
22
篇与
docker
相关的结果
2025-05-22
自建Karakeep服务
自建Karakeep服务 image图片 Karakeep简介 Karakeep是一款支持自托管的全能书签管理工具,它能将你收藏的网页链接、随手记的文本片段、甚至截图都整合到同一个平台,并通过AI自动打标签+全文搜索实现秒级定位。更牛逼的是官方还提供了安卓/iOS客户端和浏览器插件,真正做到全平台覆盖。 GitHub 原项目地址:https://github.com/karakeep-app/karakeep 官网地址:https://karakeep.app/ 官方文档地址:https://docs.karakeep.app/ Karakeep功能 收藏链接、做简单笔记并存储图像和 PDF 文件。( Bookmark links, take simple notes and store images and pdfs.) 自动获取链接标题、描述和图像。( Automatic fetching for link titles, descriptions and images.) 将您的书签整理成列表。( Sort your bookmarks into lists.) 对所有存储的内容进行全文搜索。 基于人工智能(又名 chatgpt)的自动标签。支持使用 ollama 的本地模型! OCR 用于从图像中提取文本。 Chrome 插件 和 Firefox 插件 用于快速添加书签。 一个 iOS 应用 ,以及一个 Android 应用 。 从 RSS feed 自动收集。 REST API。 多语言支持。 标记并存储您囤积内容中的亮点。 整页存档(使用 monolith)以防止链接失效。使用 youtube-dl 自动视频存档。 支持批量操作。 SSO 支持,深色模式支持, 自托管优先 搭建环境 系统 Debian12 域名一枚,并做好解析到服务器上 安装好Docker、Docker-compose 开始搭建 sudo -i # 切换到root用户 apt update -y # 升级packages apt install wget curl sudo vim git -y # 安装常用的软件创建一下安装的目录: mkdir -p /home/karakeep cd /home/karakeep vim docker-compose.ymldocker-compose.yml填入以下内容: services: web: image: ghcr.io/karakeep-app/karakeep:${KARAKEEP_VERSION:-release} restart: unless-stopped volumes: # By default, the data is stored in a docker volume called "data". # If you want to mount a custom directory, change the volume mapping to: # - /path/to/your/directory:/data - data:/data ports: - 3000:3000 env_file: - .env environment: MEILI_ADDR: http://meilisearch:7700 BROWSER_WEB_URL: http://chrome:9222 # OPENAI_API_KEY: ... # You almost never want to change the value of the DATA_DIR variable. # If you want to mount a custom directory, change the volume mapping above instead. DATA_DIR: /data # DON'T CHANGE THIS chrome: image: gcr.io/zenika-hub/alpine-chrome:123 restart: unless-stopped command: - --no-sandbox - --disable-gpu - --disable-dev-shm-usage - --remote-debugging-address=0.0.0.0 - --remote-debugging-port=9222 - --hide-scrollbars meilisearch: image: getmeili/meilisearch:v1.13.3 restart: unless-stopped env_file: - .env environment: MEILI_NO_ANALYTICS: "true" volumes: - meilisearch:/meili_data volumes: meilisearch: data:同目录创建.env See https://docs.karakeep.app/configuration for more information DATA_DIR=/data MEILI_ADDR=http://127.0.0.1:7700 MEILI_MASTER_KEY=[generate with <openssl rand -base64 36>] NEXTAUTH_URL=http://localhost:3000 NEXTAUTH_SECRET=[generate with <openssl rand -base64 36>]要启用自动标记,您需要配置 OpenAI 按照 OpenAI 的帮助获取 API 密钥 将 OpenAI API 密钥添加到 env 文件中: OPENAI_API_KEY=<key> OPENAI_BASE_URL=然后运行: docker-compose up -d利用宝塔面板反向代理 新建一个站点,不要数据库,不要 php,纯静态 然后打开下面的配置,修改 Nginx 的配置 注释掉上图内容 图片 添加下列代码: 图片 第一次首次登陆需要自行注册账号,默认管理员 如果需要关闭注册,需要在.env文件中添加环境变量 DISABLE_SIGNUPS=true请记住,每次更改 .env 文件时,都需要重新运行 docker-compose up -d 如果你想要更多的配置参数,请在此处查看配置文档。
技术搬砖
# docker
# 稍后阅读
# karakeep
admin
5月22日
0
20
0
2025-05-22
自建 Wallabag 服务
自建 Wallabag 服务 图片 Wallabag 简介 wallabag 是一个网络应用程序,允许您保存网页以供以后阅读。单击,保存并在需要时阅读。它提取内容,这样您就不会被弹出窗口 您可以将其安装在自己的服务器上,也可以在 wallabag.it 上创建一个帐户。 项目展示 GitHub 原项目地址:https://github.com/wallabag/wallabag 官网地址:https://wallabag.org/ 官方文档地址:https://doc.wallabag.org/en/admin/installation/requirements.html 官方镜像:https://hub.docker.com/r/wallabag/wallabag 图片预览 图片 图片 图片 图片 搭建环境 系统 Debian12 域名一枚,并做好解析到服务器上 安装好Docker、Docker-compose 账号密码:wallabag:wallabag 开始搭建 sudo -i # 切换到root用户 apt update -y # 升级packages apt install wget curl sudo vim git -y # 安装常用的软件创建一下安装的目录: mkdir -p /home/wallabag cd /home/wallabag vim docker-compose.ymldocker-compose.yml填入以下内容: sql版本 version: '3' services: wallabag: image: wallabag/wallabag environment: - SYMFONY__ENV__FROM_EMAIL=xxxxx@163.com # 修改成你自己的邮箱 - SYMFONY__ENV__DOMAIN_NAME=https://xxxxxx.com # 修改成稍后要反向代理的域名 - SYMFONY__ENV__SERVER_NAME="Achen" #修改成你自己的网站名称 - SYMFONY__ENV__LOCALE=zh ports: - 8080:80 # 8080可以修改成其他的自己想用的端口 volumes: - ./images:/var/www/wallabag/web/assets/images # 将图片映射挂载到本地,这样docker停止了,数据不会丢失 - ./data:/var/www/wallabag/datamysql 版本 version: '3' services: wallabag: image: wallabag/wallabag environment: - MYSQL_ROOT_PASSWORD=wallaroot - SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql - SYMFONY__ENV__DATABASE_HOST=db - SYMFONY__ENV__DATABASE_PORT=3306 - SYMFONY__ENV__DATABASE_NAME=wallabag - SYMFONY__ENV__DATABASE_USER=wallabag - SYMFONY__ENV__DATABASE_PASSWORD=wallapass - SYMFONY__ENV__DATABASE_CHARSET=utf8mb4 - SYMFONY__ENV__MAILER_HOST=127.0.0.1 - SYMFONY__ENV__MAILER_USER=~ - SYMFONY__ENV__MAILER_PASSWORD=~ - SYMFONY__ENV__FROM_EMAIL=xxxxx@163.com # 修改成你自己的邮箱 - SYMFONY__ENV__DOMAIN_NAME=https://xxxxxx.com # 修改成稍后要反向代理的域名 - SYMFONY__ENV__SERVER_NAME="Achen" - SYMFONY__ENV__LOCALE=zh ports: - 8000:80 # 8000可以修改成其他的自己想用的端口 volumes: - /root/achen/achen_wanjia/wallabag/images:/var/www/wallabag/web/assets/images # 将图片映射挂载到本地,这样docker停止了,数据不会丢失 healthcheck: test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost"] interval: 1m timeout: 3s depends_on: - db - redis db: image: mariadb environment: - MYSQL_ROOT_PASSWORD=wallaroot volumes: - ./data:/var/lib/mysql # 将数据映射挂载到本地,这样docker停止了,数据不会丢失 - ./images:/var/www/wallabag/web/assets/images # 将图片映射挂载到本地,这样docker停止了,数据不会丢失 healthcheck: test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"] interval: 20s timeout: 3s redis: image: redis:alpine healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 20s timeout: 3spostgres 版本 这里额外提供一份以postgresql作为数据库的配置,用于替换mariadb以支持一些mariadb不支持的系统架构,例如linux/arm/v7架构。如果遇到架构不支持的问题,请尝试以下配置 version: '3' services: wallabag: image: wallabag/wallabag restart: always environment: - POSTGRES_PASSWORD=wallaroot # 自行设置密码 - POSTGRES_USER=wallabag_admin # 自行设置用户名 - SYMFONY__ENV__DATABASE_DRIVER=pdo_pgsql # 适用于 pgsql 的驱动 - SYMFONY__ENV__DATABASE_HOST=db - SYMFONY__ENV__DATABASE_PORT=5432 # pgsql 的默认端口 - SYMFONY__ENV__DATABASE_NAME=wallabag - SYMFONY__ENV__DATABASE_USER=wallabag - SYMFONY__ENV__DATABASE_PASSWORD=wallapass # 自行设置密码 - SYMFONY__ENV__DATABASE_TABLE_PREFIX="wallabag_" - SYMFONY__ENV__MAILER_DSN=smtp://127.0.0.1 - SYMFONY__ENV__FROM_EMAIL=example@example.com # 自行设置邮箱 - SYMFONY__ENV__DOMAIN_NAME=http://127.0.0.1:8888 # 自定义域名 - SYMFONY__ENV__SERVER_NAME="wallabag service" # 服务名称 ports: - "8888:80" volumes: - ./images:/var/www/wallabag/web/assets/images healthcheck: test: ["CMD", "wget" ,"--no-verbose", "--tries=1", "--spider", "http://localhost"] interval: 1m timeout: 3s depends_on: - db - redis db: image: postgres:9.6 restart: always environment: - POSTGRES_PASSWORD=wallaroot # 这里对应前面同名环境变量的密码 - POSTGRES_USER=wallabag_admin # 这里对应前面同名环境变量的用户名 volumes: - ./data:/var/lib/mysql healthcheck: test: ["CMD", "mysqladmin" ,"ping", "-h", "localhost"] interval: 20s timeout: 3s redis: image: redis:alpine restart: always healthcheck: test: ["CMD", "redis-cli", "ping"] interval: 20s timeout: 3s简便修改版 如果本地宿主机安装了mysql或postgresql和redis version: '3' services: wallabag: image: wallabag/wallabag environment: - MYSQL_ROOT_PASSWORD=wallaroot # 修改成你自己的mysql-root密码,需要此项来创建数据库和用户 - SYMFONY__ENV__DATABASE_DRIVER=pdo_mysql - SYMFONY__ENV__DATABASE_HOST=172.17.0.1 #这里修改成宿主机在docker中的内网地址 - SYMFONY__ENV__DATABASE_PORT=3306 - SYMFONY__ENV__DATABASE_NAME=wallabag # 修改成你自己的mysql数据库名 - SYMFONY__ENV__DATABASE_USER=wallabag # 修改成你自己的mysql数据库账户名 - SYMFONY__ENV__DATABASE_PASSWORD=wallapass # 修改成你自己的mysql数据库账户密码 - SYMFONY__ENV__REDIS_HOST=172.17.0.1 #这里修改成宿主机在docker中的内网地址 - SYMFONY__ENV__REDIS_PORT=6379 - SYMFONY__ENV__REDIS_PASSWORD= #这里修改成宿主机在redis密码 - SYMFONY__ENV__DATABASE_CHARSET=utf8mb4 - SYMFONY__ENV__FROM_EMAIL=xxxxx@163.com # 修改成你自己的邮箱 - SYMFONY__ENV__DOMAIN_NAME=https://xxxxxx.com # 修改成稍后要反向代理的域名 - SYMFONY__ENV__SERVER_NAME="Achen" #修改成你自己的网站名称 - SYMFONY__ENV__LOCALE=zh ports: - 8080:80 # 8080可以修改成其他的自己想用的端口 volumes: - ./images:/var/www/wallabag/web/assets/images # 将图片映射挂载到本地,这样docker停止了,数据不会丢失 - ./data:/var/www/wallabag/data然后运行: docker-compose up -d利用宝塔面板反向代理 新建一个站点,不要数据库,不要 php,纯静态 然后打开下面的配置,修改 Nginx 的配置 注释掉上图内容 图片 添加下列代码: 图片 默认的用户名和密码都是wallabag(这个在 docker hub 文档中有说明)登录之后,先去 Config 中修改 PASSWORD,修改完成后再进行 API 服务的配置 创建 API 服务 image图片 创建一个新的客户端,取一个名称,然后创建即可。 image图片 创建完客户端之后就会提供客户端 ID 和密钥,此时不要直接刷新网页避免重置 ID 和密钥。 设置中文 image图片 image图片 之后再点击下方的SAVE进行保存即可 配置插件 Chrome 搜索:应用商店 图片 搜索 Wallabag 图片 点击添加到Chrome 图片 点击浏览器插件 image图片 将需要的网页添加到Wallabag即可! 图片 这样就可以进到Wallabag查看了! 图片 手机安装相应的 App 即可同步查看! 导入 worker 要运行 异步 redis 导入 worker,请使用以下命令: $ docker run --name wallabag --link wallabag-db:wallabag-db --link redis:redis -e <... your config variables here ...> wallabag/wallabag import <type>其中 是 pocket、readability、instapaper、wallabag_v1、wallabag_v2、firefox 或 chrome 之一。 启用 Redis 作为异步导入的缓存 进入 wallbag 网页界面,登录后,点击右上角的头像,选择【内部设置】,点击【导入】标签,下方的 启用 Redis 来异步导入数据 值默认是 0 ,改为 1 后点击“应用”按钮,就可以开启 Redis 作为异步导入的缓存了 此时再次点击右上角的头像,选择【导入】,应该能看到页面顶部有一行很显眼的提示: 导入是异步进行的。一旦导入任务开始,一个外部 worker 就会一次处理一个 job。目前的服务是: Redis此时选择一个导入途径,比如选择了【Firefox】,然后点击“导入内容”,选择待导入的文件,点击“上传文件”,此时右上角应该会提示: 导入情况摘要: 1 个项目正在等待导入。此时如果刷新一下【导入】页面,会发现右上角有个提示: Messages in queue: 1多次刷新也之后提示这一句,看上去导入任务并没有开始的样子。。 此时需要去手动执行一下同步任务才能开始: docker exec -it wallabag /var/www/wallabag/bin/console wallabag:import:redis-worker firefox --env=prod导入完成后,刷新一下 wallabag 网页,应该能看到导入的内容了。 保存的文章不显示图片 如果你保存的文章不显示图片,需要到NAS中对docker这个文件夹开启写入权限,因为没有写入权限,图片因此无法保存到本地 然后在宿主机执行下面这个命令,将宿主机挂载目录的权限调整至 777 ,也就是允许(任何)其他用户读写: sudo chmod -R 777 data终究还是翻了一下官方的 dockerfile ,原来容器内的用户和组都是 nobody 最根本的办法,就是在宿主机将挂载目录的归属指定为 nobody 用户和组。 但是这个特殊的用户和组直接 sudo chown nobody:nobody data 是不行的,需要指定 uid 和 gid 才行: sudo chown -R 65534:65534 data最后再执行一下 docker compose up -d 重建容器就可以了(因为刚才修改了 compose 配置文件)。
技术搬砖
# docker
# 稍后阅读
# Wallabag
admin
5月22日
0
16
0
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: ""ghcr.io/m1k1o/neko/firefox:latest"" 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` 如果不需要启用文件传输功能 | ```m1k1o/neko:firefox:测试下来firefox不会黑屏,使用别的浏览器可能会黑屏,这点可以自己设置chromium等,最好还是firefox 安装chromium的示例 version: "3.8" services: neko: image: "ghcr.io/m1k1o/neko/chromium:latest" restart: "unless-stopped" shm_size: "2gb" cap_add: - SYS_ADMIN ports: - "8080:8080" - "52000-52100:52000-52100/udp" environment: NEKO_DESKTOP_SCREEN: '1920x1080@30' NEKO_MEMBER_MULTIUSER_USER_PASSWORD: neko NEKO_MEMBER_MULTIUSER_ADMIN_PASSWORD: admin NEKO_WEBRTC_EPR: 52000-52100 NEKO_WEBRTC_ICELITE: 1 NEKO_WEBRTC_NAT1TO1: <your-IP>按 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
5月7日
0
36
0
2025-01-12
Docker 部署免维护的 IPTV 直播源 + 点播聚合 m3u 的教程
image图片 原文地址 https://wp.gxnas.com/15153.html一、安装 2025 年 1 月 2 日更新: 由于作者防止项目泛滥加入了鉴权,操作步骤改成: ①先到【这里 】生成 AES 密钥,同时把系统生成的 AES 密钥复制; image图片 ②加入【作者 Telegram 交流群 】,并打开【作者 Telegram 鉴权机器人 】,粘贴 AES 密钥,生成 Userid 和专属 Token(注意:此步骤需要科学出国的网络环境以及登录 Telegram); 图片 ③填入申请到得上一步骤生成的 Userid 和 Token 两个参数,生成一键部署 docker 的命令; image图片 ④回到群晖 SSH 下,粘贴命令运行。 image图片 使用 Docker 方式或者使用 Docker compose 方式部署二选一(本教程用 “2、Docker compose 方式”);由于 docker 域名被墙,网络环境需要保证 docker 可以正常拉取镜像,如果镜像无法拉取的,请参考【本教程】设置,或者【自行搭建 docker 加速地址】; 1、使用 Docker 方式: 复制 “2025 年 1 月 2 日更新” 内容中的第④个步骤生成的 Docker 运行命令: docker run -d --restart unless-stopped --net=host --privileged=true --name allinone youshandefeiyang/allinone部署 watchtower 自动监听肥羊 IPTV 的 allinone 镜像更新: docker run -d --name watchtower --restart unless-stopped -v /var/run/docker.sock:/var/run/docker.sock containrrr/watchtower allinone -c --schedule "0 0 2 * * *"2、使用 Docker compose 方式(复制 “2025 年 1 月 2 日更新” 内容中的第④个步骤生成的 Docker compose 文件内容:): version: "3.3" services: allinone: restart: unless-stopped privileged: true container_name: allinone image: youshandefeiyang/allinone network_mode: "host"图片 二、肥羊 IPTV 的 allinone 的 m3u 链接地址: 如果你是在公网服务器部署,不愿意开启聚合TV直播服务,在运行裸程序或者Docker时,加上参数 -tv=false 即可不开启直播服务(仅对gaoma、itv、rptv生效,migu走的是302重定向,没有代理流量) 如果你的allinone服务被部署至服务器上,并且使用https域名反代了IP+端口,那么你的链接要变成: https://你的反代域名/tv.m3u(?url=https://你的反代域名) 括号中为可选参数,用来方便替换列表前缀为https的,如果反代域名中含有特殊符号的,先去urlencode,如果反代后的域名依旧存在端口,那就把端口照样加上去,比如url\=https://feiyang.com:12345,不加url参数默认是http协议 举个例子:https://www.feiyang.com/tv.m3u?url=https://www.feiyang.com 1、Ysptp 和 IPtv 聚合 m3u 地址: http://你的IP:35455/tv.m3u图片 图片 2、BiliBili 生活: http:// 你的IP:35455:35455/bililive.m3u图片 3、虎牙一起看: http://你的IP:35455:35455/huyayqk.m3u图片 4、斗鱼一起看: http://你的IP:35455:35455/douyuyqk.m3u图片 5、YY 轮播: http://你的IP:35455:35455/yylunbo.m3u图片 三、代理播放地址 抖音: 默认最高画质,浏览器打开并复制(live.douyin.com/)xxxxxx,只需要复制后面的xxxxx即可(可选flv和hls两种种流媒体传输方式,默认flv):http://你的IP:35455/douyin/xxxxx(?stream=hls)斗鱼: 可选m3u8和flv以及xs三种流媒体传输方式【(www.douyu.com/)xxxxxx 或 (www.douyu.com/xx/xx?rid\=)xxxxxx,默认flv】:http://你的IP:35455/douyu/xxxxx(?stream=flv)BiliBili(live.bilibili.com/)xxxxxx: 1,平台platform参数选择(默认web,如果有问题,可以切换h5平台): "flv" \=> "FLV" "hls" \=> "M3U8" 2,线路line参数选择(默认线路二,如果卡顿/看不了,请切换线路一或者三,一般直播间只会提供两条线路,所以建议线路一/二之间切换): "first" \=> "线路一" "second" \=> "线路二" "third" \=> "线路三" 3,画质quality参数选择(默认原画,可以看什么画质去直播间看看,能选什么画质就能加什么参数,参数错误一定不能播放): "4" \=> "原画质" "3" \=> "低画质" 4,最后的代理链接示例: http://你的IP:35455/bilibili/xxxxxx(?platform=hls&line=first&quality=4)虎牙(huya.com/)xxxxxx: 1,查看可用CDN: http://你的IP:35455/huya/xxxxx?type=json 2,切换媒体类型(默认flv,可选flv、hls): http://你的IP:35455/huya/xxxxx?media=hls 3,切换CDN(默认hwcdn,可选hycdn、alicdn、txcdn、hwcdn、hscdn、wscdn,具体可先访问1获取): http://你的IP:35455/huya/xxxxx?cdn=alicdn 4,最后的代理链接示例: http://你的IP:35455/huya/xxxxx(?media=xxx&cdn=xxx)YouTube: https://www.youtube.com/watch?v\=cK4LemjoFd0 Rid: cK4LemjoFd0http://你的IP:35455/youtube/cK4LemjoFd0(?quality=1080/720...)YY(默认最高画质,参数为4): https://www.yy.com/xxxxhttp://你的IP:35455/yy/xxxx(?quality=1/2/3/4...)四、使用方法: 上述 m3u 地址可以在电脑上使用 PotPlayer 打开,或者在 emby/jellyfin/kodi 等多媒体软件中添加到 iptv 插件中使用。 图片 图片 图片
默认分类
# docker
# iptv
# 肥羊
admin
1月12日
0
4,293
0
2025-01-06
十分钟搭建属于自己的信息流—FreshRSS
十分钟搭建属于自己的信息流—FreshRSS 原文地址:https://blog.laoda.de/archives/docker-compose-install-freshrss1. 前言 为什么要用 RSS? 因为它们提供了一种可定制的、无算法的方式来聚合和访问来自多个来源的内容,使我们能够高效管理信息过载,并在不受社交媒体干扰的情况下保持对自己感兴趣内容的更新。 2. 介绍 这一期我们来介绍另一个和 TinytinyRSS 类似的 RSS 管理服务——FreshRSS。 相较于 Tiny Tiny RSS,它有着更低的资源使用、更现代和用户友好的界面,以及更好的文档,使得对于技术能力较弱的用户来说,设置和维护更加容易。 图片 3. 相关地址 官方 GitHub 地址:https://github.com/FreshRSS/FreshRSS (目前 9.2k 个 star,欢迎大家去给项目点星星!) 4. 搭建环境 服务器:建议服务器内存 1G 以上 系统:Debian 11 安装好 Docker、Docker-compose 【必需】域名一枚,并做好解析到服务器上 【非必需】提前安装好宝塔面板海外版本 aapanel,并安装好 Nginx 5. 搭建方式 5.1 安装 Docker 5.2 创建安装目录 创建一下安装的目录: sudo -i mkdir -p /root/data/docker_data/freshrss cd /root/data/docker_data/freshrss接着我们来编辑下docker-compose.yml vim docker-compose.ymlservices: freshrss: image: freshrss/freshrss:latest container_name: freshrss environment: - CRON_MIN=*/20 #每20分钟刷新一次 - TZ=Asia/Shanghai volumes: - ./data:/var/www/FreshRSS/data - ./extensions:/var/www/FreshRSS/extensions ports: - 8080:80 #左边的8080可以改成服务器上没有用过的端口 depends_on: - postgres restart: always postgres: image: postgres:alpine container_name: freshrss-postgres environment: - POSTGRES_USER=freshrss - POSTGRES_PASSWORD=freshrss #密码可以自己修改 - POSTGRES_DB=freshrss volumes: - ./freshrss-postgres-data:/var/lib/postgresql/data restart: always同样,修改完成之后,可以在英文输入法下,按 i 修改,完成之后,按一下 esc,然后 :wq 保存退出。 5.3 打开服务器防火墙(非必需)并访问网页 打开防火墙的端口 8080 如果你在 docker-compose 文件里换了 9009,这边就需要填 9009,以此类推 查看端口是否被占用(以 8080 为例),输入: lsof -i:8080 #查看 8080 端口是否被占用,如果被占用,重新自定义一个端口如果啥也没出现,表示端口未被占用,我们可以继续下面的操作了~ 如果出现: -bash: lsof: command not found运行: apt install lsof #安装 lsof如果端口没有被占用(被占用了就修改一下端口,比如改成 8381,注意 docker 命令行里和防火墙都要改) 5.4 启动 freshrss cd /root/data/docker_data/freshrss docker compose up -d # 注意,老版本用户用 docker-compose up -d等待拉取好镜像,出现 done的字样之后, 理论上我们就可以输入 http://ip:8080 访问了。 但是这边我们推荐先搞一下反向代理! 做反向代理前,你需要一个域名! 6. 利用宝塔面板反向代理 发现还是有不少小伙伴习惯用宝塔面板,这边也贴一个宝塔面板的反代配置: 直接新建一个站点,不要数据库,不要 php,纯静态即可 然后打开下面的配置,修改 Nginx 的配置。 image图片 代码如下: location / { proxy_pass http://127.0.0.1:8080/; # 注意改成你实际使用的端口 rewrite ^/(.*)$ /$1 break; proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Upgrade-Insecure-Requests 1; proxy_set_header X-Forwarded-Proto https; } 7. 使用教程 建议参考官方配置文档:https://github.com/freshrssapp/freshrss/blob/main/docs/configuration.md 7.1 安装与配置 图片 图片 数据库信息 图片 主机记得填postgres,其他的按docker-compose.yaml里面的填 设置账号密码: 图片 安装成功! 图片 登录 图片 默认订阅了 Fresh RSS 的官方 GitHub 仓库的 releases 图片 这边我们不管,先来订阅一下咕咕的博客,最近视频更新进度缓慢,但是博客还是会经常更新的,订阅了博客的 RSS 之后,只要我一更新博客,你就能第一时间看到啦! 以咕咕的博客为例子,添加博客的 RSS:https://blog.laoda.de/rss.xml 图片 “订阅管理”——“添加订阅源或分类” 可以先给分类起个名字,比如 “个人博客” 图片 然后再次点击 “添加订阅源” 图片 输入咕咕博客的 RSS:https://blog.laoda.de/rss.xml 图片 图片 点击左上角 FreshRSS 的图片,就能回到首页了, 可以看到已经订阅成功! 图片 7.2 扩展下载 FreshRSS 还有很多扩展可以下载, 图片 你可以选择合适的扩展进行下载。 图片 有一个吐槽的点是,这个下载是要手动的... 扩展的 GitHub 仓库:https://github.com/FreshRSS/Extensions 扩展的下载地址:https://github.com/FreshRSS/Extensions/archive/master.zip 基本上就是这个包,我们上传到服务器里。(当然你可以直接用服务器来下载,这样就省得上传这个步骤了) 图片 7.2.1 直接命令行操作(二选一) cd /root/data/docker_data/freshrss/extensions/ wget https://github.com/FreshRSS/Extensions/archive/master.zip unzip master.zip cd Extensions-master mv /root/data/docker_data/freshrss/extensions/Extensions-master/* /root/data/docker_data/freshrss/extensions/然后记得重启一下容器: cd /root/data/docker_data/freshrss docker compose down docker compose up -d7.2.2 如果你用的是 finalshell 的话(二选一) 上传插件 图片 使用 unzip 命令来解压缩, 图片 移动到我们制定的文件夹里 mv /root/data/docker_data/freshrss/extensions/Extensions-master/* /root/data/docker_data/freshrss/extensions/刷新 图片 7.3 配置 API 允许手机访问, image图片 设置一个 API 密码, image图片 手机端,IOS 推荐用 Reeder,安卓推荐 Read You 注意手机 app 登录的时候,末尾还要加上greader.php 比如:https://xxxxx.com/api/greader.php image图片image图片 7.4 更新 freshrss cd /root/data/docker_data/freshrss docker-compose pull docker-compose up -d # 请不要使用 docker-compose stop 来停止容器,因为这么做需要额外的时间等待容器停止;docker-compose up -d 直接升级容器时会自动停止并立刻重建新的容器,完全没有必要浪费那些时间。 docker image prune # prune 命令用来删除不再使用的 docker 对象。删除所有未被 tag 标记和未被容器使用的镜像提示: WARNING! This will remove all dangling images. Are you sure you want to continue? [y/N]输入 y 利用 Docker 搭建的应用,更新非常容易~ 7.5 卸载 freshrss 同样进入安装页面,先停止所有容器。 cd /root/data/docker_data/freshrss docker-compose down cd .. rm -rf /root/data/docker_data/freshrss # 完全删除可以卸载得很干净。 参考资料 官方 GitHub:https://github.com/FreshRSS/FreshRSS
默认分类
# docker
# RSS
# FreshRSS
admin
1月6日
0
232
0
2024-12-02
使用Watchtower自动更新Docker镜像
使用Watchtower自动更新Docker镜像 __imgapi.cn__5c9c2dac47679.jpg 1920×1080图片 使用 Docker 可以迅速在 VPS 上运行服务,而不用配置和修改环境。Docker 服务的更新通过拉取最新镜像实现,当运行的 Docker 数目多了之后,保持镜像最新就成为了一项琐碎的工作。使用 Watchtower 可以便捷地监控 Docker 服务是否有最新镜像,自动拉取最新镜像、更新服务并删除旧有镜像。 Docker compose 是用于定义和运行多容器 Docker 应用程序的工具。在配置好 docker-compose.yml 文件后,使用 docker compose up -d 即可方便上线服务,我的全部 Docker 服务都使用这一方式部署。 以下是 Watchtower 的 docker-compose.yml 文件设置。 Docker Compose 文件 version: "3.3" services: watchtower: image: containrrr/watchtower:latest container_name: watchtower restart: unless-stopped volumes: - /var/run/docker.sock:/var/run/docker.sock environment: - TZ=Asia/Shanghai - WATCHTOWER_DEBUG=true - WATCHTOWER_CLEANUP=true - WATCHTOWER_SCHEDULE=0 0 4 * * ? # - WATCHTOWER_POLL_INTERVAL=43200其中,WATCHTOWER_SCHEDULE 和 WATCHTOWER_POLL_INTERVAL 均为设置 Watchtower 运行频次的指令,两个方式任选一个。前者使用 Cron 格式,在固定时间运行;后者的单位为秒 (S),经过固定时间间隔运行。 设置 Watchtower 通知服务 Watchtower 使用 Shutrrr 发送通知。以下为设置 Telegram bot 通知: - WATCHTOWER_LIFECYCLE_HOOKS=True - WATCHTOWER_NOTIFICATIONS=shoutrrr - WATCHTOWER_NOTIFICATION_URL=telegram://bot_token@telegram/?channels=user-id 通过 @BotFather 创建自己的通知机器人,并获取 bot_token 通过 @GetIDs Bot 获取 user-id 推荐 IOS 用户使用 Bark 设置通知 [*]: - WATCHTOWER_LIFECYCLE_HOOKS=True - WATCHTOWER_NOTIFICATIONS=shoutrrr - WATCHTOWER_NOTIFICATION_URL=bark://:devicekey@host/path使用邮件通知服务 - WATCHTOWER_LIFECYCLE_HOOKS=True - WATCHTOWER_NOTIFICATIONS=email - WATCHTOWER_NOTIFICATION_EMAIL_FROM= #设置通知邮件的发件人 - WATCHTOWER_NOTIFICATION_EMAIL_TO= #设置通知邮件的收件人 - WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.gmail.com #SMTP 服务器 - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=587 #SMTP 服务器端口 - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER= - WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD= - WATCHTOWER_NOTIFICATION_EMAIL_DELAY= #发送通知前的延迟时间,以秒为单位设置部分 Docker 禁止更新 1、在不希望被 Watchetower 监控更新的 Docker 容器中添加**环境变量: WATCHTOWER_LABEL_ENABLE=false或者添加容器标签: com.centurylinklabs.watchtower.enable=false2、当无法设置标签时,可以在Watchetower容器中设置环境变量来排除特定的容器,变量填写需要禁止更新的容器名称,用逗号或空格隔开 WATCHTOWER_DISABLE_CONTAINERS=测试 Watchtower 由于 Watchtower 的默认轮询间隔为 1 小时,因此可能需要等待一段时间才能看到自动更新效果。可以手动触发 Watchtower 的轮询以立即检查是否有更新。可以使用以下命令来手动触发 Watchtower docker exec -it watchtower /watchtower --debug --run-once nginx推荐阅读 Watchtower 官方手册 Watchtower 通过 telegram 发通知
默认分类
# docker
# Watchtower
admin
1年前
0
394
0
2024-09-09
自建电子邮件管理程序Cypht
关于Cypht Cypht是一款免费开源的Web电子邮件客户端管理程序,它在不牺牲隐私和安全性的前提下,汇聚了个电子邮件账户,让用户仅需一个网页就能轻松管理多个电子邮件账户,包括查看、发送邮件,以及还提供了邮箱常用的过滤、标签、搜索等功能,从而提高了多个邮箱同时使用的效率与便捷。 image.png图片 image.png图片 它的亮点特性如下: 自托管 :Cypht 支持自托管,你可以选择自己部署服务器,完全掌控自己的数据。 端到端加密: 所有通信均在发送者和接收者之间进行加密,即使数据通过不安全的网络,也无需担忧信息泄漏。 插件系统 : 通过插件,你可以连接到不同的邮件服务提供商,或扩展其他功能。 隐私优先 :Cypht 不存储用户的私钥,确保只有消息的收发双方才能解密信息。 它的功能与用途包括: 安全的电子邮件: Cypht 提供了一种方法,可以在发送邮件时自动加密消息内容,防止未经授权的第三方阅读。 跨平台 :不论你是 Windows 用户、Mac 用户还是 Linux 爱好者,或者更倾向于使用智能手机,Cypht 都可以无缝适配你的设备。 易于使用 :尽管加密听起来复杂,但 Cypht 的设计原则之一就是易用性,使得即便是对技术不太了解的用户也能轻松上手。 透明度与审计 :开源代码意味着任何人都可以查看其内部工作原理,增强用户对安全性的信心。Cypht部署 需要说明的是,一般涉及到安全方面的Docker容器,基本都会需要稳定的数据库作为支撑,今天介绍的这个Cypht也是一样,所以在部署之前,咱们需要先搞定数据库。 第一步:创建数据库 先打开数据库管理工具phpMyAdmin,然后在“账户”里面“新增用户账户”。 image.png图片 填入新增用户账户的信息: 用户名:cypht 主机名:任意主机( % ) 密码:随意(我这里演示就设为了“123456”) 然后勾选下面的“创建与用户同名的数据库并授予所有权限”,最后别忘了点页面下方的“执行”按钮 image.png图片 image.png图片 第二步:Cypht部署 1.任意位置新建文件夹 2.新建docker-compose.yaml文件 3.复制下面的 80端口被占用可改为其他端口 version: '3' services: cypht: image: sailfrog/cypht-docker:latest volumes: - ./cypht/users:/var/lib/hm3/users ports: - "80:80" environment: - CYPHT_AUTH_USERNAME=admin - CYPHT_AUTH_PASSWORD=admin_password - CYPHT_DB_CONNECTION_TYPE=host - CYPHT_DB_HOST=172.17.0.1:3306 - CYPHT_DB_HOST=db - CYPHT_DB_NAME=cypht - CYPHT_DB_USER=cypht - CYPHT_DB_PASS=123456 - CYPHT_SESSION_TYPE=DB CYPHT_AUTH_USERNAME 后台管理员账号,自己随意设置 CYPHT_AUTH_PASSWORD 后台管理员密码,自己随意设置 CYPHT_DB_CONNECTION_TYPE 数据库连接类型,默认为 host CYPHT_DB_HOST 填写数据库主机地址+端口,默认为 宿主机在Docker内网IP:3306 CYPHT_DB_NAME 数据库名称,我前面设置的为cypht CYPHT_DB_USER 数据库用户,我前面设置的为cypht CYPHT_DB_PASS 数据库密码,我前面设置的为123456 CYPHT_SESSION_TYPE 保持登录状态,默认的 DB 即可 cd进docker-compose.yaml文件目录,启动 docker-compose up -d宿主机在Docker内网IP docker在运行时就建立了虚拟网卡,并命名为docker0,在宿主机ifconfig可以看到网桥的ip是172.17.0.1 image.png图片 设置宿主机mysql允许docker0的虚拟网卡ip访问 宿主机mysql设置允许用户cypht通过172.19.0.2访问cypht数据库的任意表 mysql -uroot -pmysql>GRANT ALL PRIVILEGES ON cypht.* TO 'cypht'@'172.19.0.2' IDENTIFIED BY '123456' WITH GRANT OPTION; mysql>flush privileges;Cypht体验 直接在浏览器中输入 【 IP:端口号】 就能看到登录界面了 首次打开需要登录。登录的账号和密码就是我们部署时环境变量中设置的管理员账号和密码 image.png图片 登录成功后的主界面,程序默认为英文界面。 不过程序是可以通过如上图所示的操作设置为简体中文的 时区默认也不是咱们内地,我们也可以通过设置更改 image.png图片 image.png图片 接着咱们先来添加一个邮箱。直接在首页位置点击“添加电子邮件账户” image.png图片 image.png图片 然后输入对应的密码。请注意:如果你的Gmail开启了两步验证,这里的密码是谷歌“应用专用密码”,而不是你实际的谷歌账号密码!!! Gmail应用密码 image.png图片 登录进来后就能直接看到自己所有的邮箱信息了 image.png图片 可以直接点开邮件,并对邮件进行回复或者转发等操作,和谷歌自己的邮箱操作差不多 image.png图片 如果说官方服务列表中没有我们需要的邮箱服务商,我们也可以通过SMTP/IMAP服务器的方式添加,具体的大家自己研究下吧 image.png图片 同时,该项目还支持添加 RSS 订阅 image.png图片 image.png图片 最后的最后,你的设置变动都需要点击保存,否则下次在别的地方登陆都是没有任何数据的 image.png图片 image.png图片
技术搬砖
# docker
# cypht
# 邮件
admin
1年前
0
255
0
2024-08-03
一个Linux服务器WEB SSH面板(webSSH&webSFTP)
[!WARNING] 初次部署EasyNode,登录系统后务必记得修改默认账户密码 admin/admin! [!WARNING] 强烈建议使用 iptables 或 fail2ban 等安全服务限制IP访问,谨慎暴露面板服务到公网。 [!NOTE] 客户端信息监控与webssh功能都将以该服务器作为中转。中国大陆连接建议使用香港、新加坡、日本、韩国等地区的低延迟服务器来安装服务端 功能 [ ] webssh终端&SFTP [ ] 批量导入(Xshell&FinalShell) [ ] 实例分组 [ ] 凭据托管 [ ] 邮件通知 [ ] 服务器状态推送 [ ] 脚本库 [ ] 批量指令 [x] 终端自定义 图片 图片 安装 服务端安装 占用端口:8082 推荐使用docker镜像安装 Docker docker run -d --net=host --name=easynode-server -v $PWD/easynode/db:/easynode/app/db chaoszhu/easynode访问:http://yourip:8082 手动部署 依赖Nodejs版本 > 20+ git clone https://github.com/chaos-zhu/easynode cd easynode yarn cd web yarn build mv dist/* ../server/app/static cd ../server yarn start # 后台运行需安装pm2 pm2 start index.js --name easynode-server访问:http://yourip:8082 查看日志:pm2 log easynode-server 启动服务:pm2 start easynode-server 停止服务:pm2 stop easynode-server 删除服务:pm2 delete easynode-server 客户端安装 客户端用于实时向服务端推送系统、公网IP、CPU、内存、硬盘、网卡等基础信息,不安装不影响使用面板,但是无法实时同步基础信息。 占用端口:22022 安装curl -o- https://mirror.ghproxy.com/https://raw.githubusercontent.com/chaos-zhu/easynode/main/client/easynode-client-install.sh | bash卸载curl -o- https://mirror.ghproxy.com/https://raw.githubusercontent.com/chaos-zhu/easynode/main/client/easynode-client-uninstall.sh | bash查看客户端状态:systemctl status easynode-client 查看客户端日志: journalctl --follow -u easynode-client 查看详细日志:journalctl -xe
技术搬砖
# docker
# webssh
# nodejs
admin
1年前
0
207
1
2024-07-30
Docker部署搜索工具SearXNG
SearXNG 是用 Python 编写的一款开源搜索工具 安装前准备工作 SearXNG 文档地址:网页链接 Github 开源地址:网页链接 Docker 安装教程 (菜鸟教程):网页链接 Docker-Compose 安装教程 (菜鸟教程):网页链接 文章参考:我不是咕咕鸽大佬的博客 安装部署 步骤一、创建项目存放路径并克隆源码 cd /opt #在opt目录下创建 git clone https://github.com/searxng/searxng-docker.git #克隆源码 mv searxng-docker searxng #强迫症改名步骤二、修改 Docker-Compose 配置文件 cd searxng vim docker-compose.yaml将运行 candy 部分注释掉,因为我们不用 Candy 做反向代理 图片 将这里的 IP 地址从 127.0.0.1 改成 0.0.0.0 以便局域网访问,将冒号前面的端口修改成自己服务器上没有被占用的端口 图片 编辑环境配置 vim .env将域名修改成自己准备好的域名 图片 步骤三、编辑容器配置文件 cd searxng生成密钥 sed -i "s|ultrasecretkey|$(openssl rand -hex 32)|g" settings.yml修改配置文件,取消限制,将 limter 改成 false 图片 步骤四、启动容器 cd /opt/searxng docker-compose up -d步骤五、开启宝塔面板反向代理 将反向代理配置部分修改如下 location ^~ { proxy_pass http://127.0.0.1:自定义的端口; proxy_set_header Host $host; proxy_set_header Connection $http_connection; proxy_set_header X-Scheme $scheme; proxy_set_header X-Script-Name /searxng; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; }
技术搬砖
# docker
# searxng
# 搜索
admin
1年前
0
768
3
2024-07-30
Docker部署MeloTTS高质量多语言文本转语音(TTS)
MeloTTS:由MyShell AI开发的一个高质量的多语言文本到语音(TTS)库。 支持英语、西班牙语、法语、中文、日语和韩语等多种语言。 速度非常快,支持中英混合的发音,能生成清晰、自然的语音输出。 即使在普通的在CPU上也能实现实时语音合成。 image.png图片 image.png图片 主要功能: 多语言支持:MeloTTS支持多种语言的文本到语音转换,包括英语(有美国、英国、印度、澳大利亚等多种口音)、西班牙语、法语、中文、日语和韩语。这使得它适用于全球多种语言环境的应用场景。 中英混合发音:特别对于中文,MeloTTS支持中英混合的发音,这是在多语言交流中非常实用的功能,能够处理包含英文单词的中文文本。 实时CPU推理:MeloTTS设计优化以确保即使在没有GPU加速的情况下,也能在CPU上实现实时语音合成,这提高了其在不同硬件环境下的可用性。 高质量语音输出:MeloTTS旨在生成清晰、自然的语音输出,力求在各种支持的语言中保持语音的自然度和清晰度。 易于安装和使用:提供了简单的安装指南和Python API,使得用户可以轻松地在Linux环境中安装MeloTTS,并通过几行代码实现文本到语音的转换。 Linux and macOS Install The repo is developed and tested on Ubuntu 20.04 and Python 3.9. git clone https://github.com/myshell-ai/MeloTTS.git cd MeloTTS pip install -e . python -m unidic downloadDocker Install Build Docker git clone https://github.com/myshell-ai/MeloTTS.git cd MeloTTS docker build -t melotts . Run Docker docker run -it -p 8888:8888 melottsIf your local machine has GPU, then you can choose to run: docker run --gpus all -it -p 8888:8888 melottsThen open http://localhost:8888 in your browser to use the app. Python API from melo.api import TTS # Speed is adjustable speed = 1.0 device = 'cpu' # or cuda:0 text = "我最近在学习machine learning,希望能够在未来的artificial intelligence领域有所建树。" model = TTS(language='ZH', device=device) speaker_ids = model.hps.data.spk2id output_path = 'zh.wav' model.tts_to_file(text, speaker_ids['ZH'], output_path, speed=speed)
技术搬砖
# docker
# python
# tts
admin
1年前
0
695
1
1
2
3
下一页