Docker部署Memos个人备忘录

Github 1 2 3 # 创建文件夹及yaml文件 mkdir /opt/memos && cd /opt/memos nano docker-compose.yaml 1 2 3 4 5 6 7 8 services: memos: image: neosmemo/memos:stable container_name: memos volumes: - ~/.memos/:/var/opt/memos ports: - 5230:5230 使用外部数据库 Postgres数据库 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 29 services: postgres: image: postgres:16-alpine restart: unless-stopped environment: POSTGRES_DB: memos POSTGRES_USER: memos POSTGRES_PASSWORD: memosss # 替换为实际密码 volumes: - ./postgres_data:/var/lib/postgresql/data healthcheck: # 添加健康检查 test: ["CMD-SHELL", "pg_isready -U memos"] interval: 5s timeout: 5s retries: 5 memos: image: neosmemo/memos:stable restart: unless-stopped depends_on: postgres: condition: service_healthy environment: - MEMOS_DRIVER=postgres - MEMOS_DSN=postgresql://memos:memosss@postgres:5432/memos?sslmode=disable # 添加 sslmode ports: - "127.0.0.1:5230:5230" volumes: - ./memos_data:/var/opt/memos 1 docker compose up -d

创建: 2025年09月03日 | 更新: 2025年12月04日 | 字数: 163字 | 阅读时长: 1分钟 | Beiyuan

Docker部署Moviepilot媒体库自动化管理

Github Document 1 2 mkdir /opt/mp && cd /opt/mp nano docker-compose.yaml 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 29 30 services: moviepilot: stdin_open: true tty: true container_name: moviepilot-v2 hostname: moviepilot-v2 volumes: - '/root/Downloads:/media'# 这里参考文档 - './moviepilot-v2/config:/config' - './moviepilot-v2/core:/moviepilot/.cache/ms-playwright' - '/var/run/docker.sock:/var/run/docker.sock:ro' environment: - 'NGINX_PORT=3000' - 'PORT=3001' - 'PUID=0' - 'PGID=0' - 'UMASK=000' - 'TZ=Asia/Shanghai' - 'SUPERUSER=admin' restart: always image: jxxghp/moviepilot-v2:latest network_mode: host # 当使用内置网关时,可不启用 # networks: # moviepilot: # 定义一个名为 moviepilot 的自定义网络 # name: moviepilot # 网络的名称 1 docker compose up -d 获取API密钥及面板密码 1 2 3 docker logs moviepilot-v2 API:hxMQdzy_eAk-byK5Xp37EA PASSWORD:fWf1TamQrU7sW-oMHl9c-g

创建: 2025年09月03日 | 更新: 2025年12月04日 | 字数: 153字 | 阅读时长: 1分钟 | Beiyuan

Docker部署netdata监控系统数据

Github 1 2 3 # 创建文件夹及yaml文件 mkdir -p /opt/netdata/netdataconfig /opt/netdata/netdatalib /opt/netdata/netdatacache && cd /opt/netdata nano docker-compose.yaml Docker-compose 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 29 30 31 32 services: netdata: image: netdata/netdata container_name: netdata pid: host network_mode: "host" restart: unless-stopped cap_add: - SYS_PTRACE - SYS_ADMIN security_opt: - apparmor:unconfined ports: - "19999:19999" volumes: - ./netdataconfig:/etc/netdata - ./netdatalib:/var/lib/netdata - ./netdatacache:/var/cache/netdata - /:/host/root:ro,rslave - /etc/passwd:/host/etc/passwd:ro - /etc/group:/host/etc/group:ro - /etc/localtime:/etc/localtime:ro - /proc:/host/proc:ro - /sys:/host/sys:ro - /etc/os-release:/host/etc/os-release:ro - /var/log:/host/var/log:ro - /var/run/docker.sock:/var/run/docker.sock:ro volumes: netdataconfig: netdatalib: netdatacache: 1 docker compose up -d Docker CLI 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 docker run -d --name=netdata \ --pid=host \ --network=host \ -p 19999:19999 \ -v ./netdataconfig:/etc/netdata \ -v ./netdatalib:/var/lib/netdata \ -v ./netdatacache:/var/cache/netdata \ -v /:/host/root:ro,rslave \ -v /etc/passwd:/host/etc/passwd:ro \ -v /etc/group:/host/etc/group:ro \ -v /etc/localtime:/etc/localtime:ro \ -v /proc:/host/proc:ro \ -v /sys:/host/sys:ro \ -v /etc/os-release:/host/etc/os-release:ro \ -v /var/log:/host/var/log:ro \ -v /var/run/docker.sock:/var/run/docker.sock:ro \ --restart unless-stopped \ --cap-add SYS_PTRACE \ --cap-add SYS_ADMIN \ --security-opt apparmor=unconfined \ netdata/netdata 1 sudo cat /opt/netdata/netdatalib/netdata_random_session_id

创建: 2025年09月03日 | 更新: 2025年12月04日 | 字数: 205字 | 阅读时长: 1分钟 | Beiyuan

Docker部署Sub-store订阅管理

Docker Github 1 mkdir /opt/sub-store && cd /opt/sub-store 1 2 3 4 5 6 7 docker run -it -d --restart=always \ -e "SUB_STORE_BACKEND_SYNC_CRON=55 23 * * *" \ -e "SUB_STORE_FRONTEND_BACKEND_PATH=/G5uT9nqA7rXyJ2zV8LwP" \ -p 3001:3001 \ -v /opt/sub-store:/opt/app/data \ --name sub-store \ xream/sub-store

创建: 2025年09月03日 | 更新: 2025年12月04日 | 字数: 41字 | 阅读时长: 1分钟 | Beiyuan

Docker部署WebSSH-Nexus Terminal

GIthub 1 mkdir /opt/ssh && cd /opt/ssh 1 2 3 4 5 #下载docker-compose.yml及.env wget https://raw.githubusercontent.com/Heavrnl/nexus-terminal/refs/heads/main/docker-compose.yml -O docker-compose.yml && wget https://raw.githubusercontent.com/Heavrnl/nexus-terminal/refs/heads/main/.env -O .env #编辑,按需修改 nano docker-compose.yml nano .env Docker开启ipv6 在 /etc/docker/daemon.json 加入以下内容,不存在就直接创建 修改完后重启docker sudo systemctl restart docker 1 2 3 4 5 6 { "ipv6": true, "fixed-cidr-v6": "fd00::/80", "ip6tables": true, "experimental": true } 1 2 #启动 docker compose up -d Nginx反代 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #安装所需程序 sudo apt install certbot python3-certbot-nginx python3-certbot-dns-cloudflare nginx #清空默认配置 > /etc/nginx/sites-available/default #手动编辑一个名为ssh的配置 sudo nano /etc/nginx/sites-available/ssh #启用配置 sudo ln -s /etc/nginx/sites-available/ssh /etc/nginx/sites-enabled/ #从Cloudflare获取区域DNS API,这里如果你需要使用CF申请证书也不想关小黄云再操作 sudo nano /etc/letsencrypt/cloudflare.ini dns_cloudflare_api_token = 你的API #赋予权限 sudo chmod 600 /etc/letsencrypt/cloudflare.ini #使用CF-DNS申请证书,全程y就行 sudo certbot certonly --dns-cloudflare --dns-cloudflare-credentials /etc/letsencrypt/cloudflare.ini -d example.com #替换为你的域名 #直接申请证书,上面的申请完后可以用这个命令自动配置HTTPS,选1 sudo certbot --nginx -d example.com #替换为你的域名 配置示例 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 server { listen 80; # 端口可以随意修改 listen [::]:80; # 支持 IPv6,端口同样可以修改 server_name example.com; # 你的域名 location / { proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Host $http_host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Range $http_range; proxy_set_header If-Range $http_if_range; proxy_redirect off; proxy_pass http://127.0.0.1:18111; } } 1 2 sudo nginx -t #检查配置 sudo systemctl reload nginx #重新加载配置 完成后访问你的域名即可 ...

创建: 2025年09月03日 | 更新: 2025年12月04日 | 字数: 500字 | 阅读时长: 1分钟 | Beiyuan

Docker部署电子书漫画管理Kavita

Github Document Kavita部署在服务器上推荐和Calibre修改版calibre-web-automated搭配使用 kavita不支持直接在root文件夹下存放文件,类似 /home/manga这样是不行的,需要再创建子文件夹存放。 类似 /home/manga/manga1/1.cbz 1 2 3 sudo mkdir -p /opt/kavita && cd /opt/kavita sudo mkdir -p /home/kavita/manga && sudo mkdir -p /home/kavita/comics && sudo mkdir -p /home/kavita/books && sudo mkdir -p /home/kavita/config nano docker-compose.yaml 1 2 3 4 5 6 7 8 9 10 services: kavita: image: ghcr.io/kareadita/kavita:latest container_name: kavita volumes: - /home/manga/content:/manga #这里的文件夹可以不创建,按你的需求来 - /home/kavita/config:/kavita/config #不可修改右边的路径 ports: - "127.0.0.1:25600:5000" restart: unless-stopped 1 docker compose up -d

创建: 2025年09月03日 | 更新: 2025年12月04日 | 字数: 204字 | 阅读时长: 1分钟 | Beiyuan

Docker部署热门实时新闻newsnow

Github 1 2 mkdir /opt/newsnow && cd /opt/newsnow nano docker-compose.yaml 1 2 3 4 5 6 7 8 9 10 11 12 13 services: newsnow: image: ghcr.io/ourongxing/newsnow:latest container_name: newsnow restart: always ports: - '4445:4444' environment: - G_CLIENT_ID= #Github ID - G_CLIENT_SECRET= #Github SECRET - JWT_SECRET= #可以同上,这三个都可以不填,除非你需要登录 - INIT_TABLE=true - ENABLE_CACHE=true 1 docker compose up -d

创建: 2025年09月03日 | 更新: 2025年12月04日 | 字数: 76字 | 阅读时长: 1分钟 | Beiyuan

Docker部署随机图片API

Github 1 2 mkdir /opt/api && cd /opt/api nano docker-compose.yaml 1 2 3 4 5 6 7 8 9 10 11 version: '3.9' services: random-api: image: 'neixin/random-pic-api' volumes: # 竖屏图片 - './portrait:/var/www/html/portrait' # 横屏图片 - './landscape:/var/www/html/landscape' ports: - '8080:80' 1 docker compose up -d 转换脚本 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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 from PIL import Image import os # 检查图片方向 def get_image_orientation(image_path): with Image.open(image_path) as img: width, height = img.size return "landscape" if width > height else "portrait" # 转换图片为 WebP 格式 def convert_to_webp(image_path, output_folder, max_pixels=178956970): try: with Image.open(image_path) as img: # Check image size width, height = img.size if width * height > max_pixels: print(f"Skipping {image_path} because it exceeds the size limit.") return # Save the image as WebP output_path = os.path.join(output_folder, os.path.splitext(os.path.basename(image_path))[0] + ".webp") img.save(output_path, "webp") except Exception as e: print(f"Failed to convert {image_path}: {e}") # 遍历文件夹中的图片 def process_images(input_folder, output_folder_landscape, output_folder_portrait): for filename in os.listdir(input_folder): if filename.endswith(('.jpg', '.jpeg', '.png')): image_path = os.path.join(input_folder, filename) orientation = get_image_orientation(image_path) try: if orientation == "landscape": convert_to_webp(image_path, output_folder_landscape) else: convert_to_webp(image_path, output_folder_portrait) except Exception as e: print(f"Error processing {image_path}: {e}. Skipping this image.") # 指定输入和输出文件夹 input_folder = "/root/input" output_folder_landscape = "/root/landscape" output_folder_portrait = "/root/portrait" # 执行转换 process_images(input_folder, output_folder_landscape, output_folder_portrait)

创建: 2025年09月03日 | 更新: 2025年12月04日 | 字数: 273字 | 阅读时长: 1分钟 | Beiyuan

Docker自部署AvHub

Github 1 cd /opt && git clone https://github.com/levywang/avhub.git && cd avhub 1 2 pip install -r requirements.txt python main.py 1 2 3 4 5 docker run -d \ -p 1001:80 \ -v /opt/avhub:/app \ --name avhub \ levywang/avhub:latest 1 2 3 4 5 6 7 默认运行的API地址:http://127.0.0.1:8000/ 可以配置反代和域名,替换 web/script.js 52行中的 BASE_URL 后端运行的配置文件在 data/config.yaml 中,请根据实际情况修改 注意:Python Version >= 3.7 数据源 番号磁力链和封面图:来源于 missav 里番资源:来源于 hacg 琉璃神社 随机视频推荐:来源于到的爬虫数据,存储在本地文件 /data/video_urls.txt 以上数据源均配置在 data/config.yaml 中,如果数据源变更或者无法访问,需要进行修改和维护

创建: 2025年09月03日 | 更新: 2025年12月04日 | 字数: 221字 | 阅读时长: 1分钟 | Beiyuan

Linux安装Docker及Docker-compose

Github Docker及Docker Compose官方安装脚本 1 2 curl -fsSL https://get.docker.com -o get-docker.sh sudo sh get-docker.sh Docker compose手动安装 1 2 3 4 5 6 sudo curl -sSL "https://api.github.com/repos/docker/compose/releases/latest" | \ jq -r '.tag_name' | \ xargs -I {} sudo curl -L "https://github.com/docker/compose/releases/download/{}/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && \ sudo chmod +x /usr/local/bin/docker-compose && \ sudo ln -sf /usr/local/bin/docker-compose /usr/bin/docker-compose && \ docker-compose --version

创建: 2025年09月03日 | 更新: 2025年12月04日 | 字数: 94字 | 阅读时长: 1分钟 | Beiyuan