Siyuan(在线笔记)

1
2
3
4
5
6
7
docker run -d \
-v /root/docker_data/siyuan/workspace:/siyuan/workspace \
-p 6806:6806 \
-u $(id -u):$(id -g) \
--name siyuan \
b3log/siyuan:latest \
--workspace=/siyuan/workspace/
1
2
3
4
5
6
7
docker run -d \
-v /root/docker_data/siyuan/workspace:/siyuan/workspace \
-p 6806:6806 \
-u $(id -u):$(id -g) \
--name siyuan \
b3log/siyuan:v2.8.0 \ #指定版本
--workspace=/siyuan/workspace/

b3log/siyuan:v2.5.0 \

vaultwarden/Bitwarden(密码库)

github.com/dani-garcia/vaultwarden

1
2
3
4
5
6
7
8
9
#首次部署
docker pull vaultwarden/server:latest
docker run -d --name vaultwarden -v /root/docker_data/vw-data/:/data/ -p 80:80 vaultwarden/server:latest
#禁止注册
docker run -d --name bitwarden \
-e SIGNUPS_ALLOWED=false \
-v /root/docker_data/vw-data/:/data/ \
-p 80:80 \
vaultwarden/server:latest

uptime-kuma(主机监控)

https://github.com/louislam/uptime-kuma

1
2
3
4
5
docker run -d --restart=always \
--name uptime-kuma \
-p 3001:3001 \
-v /root/docker_data/uptime-kuma:/app/data \
louislam/uptime-kuma:1

Goproxy

1
2
3
4
docker run -d --name="gh-proxy-py" \
-p 0.0.0.0:34860:80 \
--restart=always \
hunsh/gh-proxy-py:latest

Tinyfilemanager

1
2
3
4
5
docker run -d \
-v /absolute/path:/var/www/html/data \
-p 3480:80 --restart=always \
--name tinyfilemanager \
tinyfilemanager/tinyfilemanager:master

Filecodebox (文件存取柜)

1
2
3
4
5
docker run -d \
--restart=always \
-p 12345:12345 \
-v /root/docker_data/FileCodeBox/:/app/data \
--name filecodebox lanol/filecodebox:latest

Waline(评论系统)

需下载 waline.sqlite/root/docker_data/waline/data

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# docker-compose.yml
version: '3'

services:
waline:
container_name: waline
image: lizheming/waline:latest
restart: always
ports:
- 127.0.0.1:8360:8360
volumes:
- /root/docker_data/waline/data:/app/data
environment:
TZ: 'Asia/Shanghai'
SQLITE_PATH: '/app/data'
JWT_TOKEN: 'Your token'
SITE_NAME: '网站名
SITE_URL: 'https://www.example.com'
SECURE_DOMAINS: 'www.example.com'
AUTHOR_EMAIL: 'email'
lang: 'zh-CN'

Flare 书签

building-a-personal-bookmark-navigation-app-from-scratch-flare.html

https://github.com/soulteary/docker-flare

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
version: '3.6'

services:
flare:
image: soulteary/flare
restart: always
# 默认无需添加任何参数,如有特殊需求
# 可阅读文档 https://github.com/soulteary/docker-flare/blob/main/docs/advanced-startup.md
command: flare
# 启用账号登录模式
command: flare --nologin=0
environment:
# 如需开启用户登录模式,需要先设置 `nologin` 启动参数为 `0`
# 如开启 `nologin`,未设置 FLARE_USER,则默认用户为 `flare`
- FLARE_USER=flare
# 指定你自己的账号密码,如未设置 `FLARE_USER`,则会默认生成密码并展示在应用启动日志中
- FLARE_PASS=123456
# 是否开启“使用向导”,访问 `/guide`
# - FLARE_GUIDE=1
ports:
- 5005:5005
volumes:
- /root/docker_data/flare/app:/app

或者

1
2
3
4
5
6
7
docker run -d \
--restart=always \
-p 5005:5005 \
-v /root/docker_data/docker/flare/app:/app \
-v FLARE_USER=flare \
-v FLARE_PASS=123456 \
--name flare soulteary/flare:latest

反代配置

1
2
3
4
5
6
7
8
9
10
11
location / {
proxy_pass http://127.0.0.1:3020/; # 注意改成你实际使用的端口
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;
}

memos(类似 Flome)

1
docker run -d --name memos -p 5230:5230 -v /root/docker_data/memos/.memos/:/var/opt/memos neosmemo/memos:latest

或者

1
2
3
4
5
6
7
8
9
10
11
version: "3"
services:
memos:
image: neosmemo/memos:latest
container_name: memeos
hostname: memeos
ports:
- "5230:5230"
volumes:
- /root/docker_data/memos/.memos/:/var/opt/memos
restart: always

Nginx Proxy Manager(Docker Proxy)

1
2
3
4
5
6
7
8
9
sudo -i

mkdir -p /root/docker_data/npm

cd /root/docker_data/npm

vim docker-compose.yml

docker-compose up -d

docker-compose.yml

1
2
3
4
5
6
7
8
9
10
11
12
version: '3'
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
- '80:80' # 冒号左边可以改成自己服务器未被占用的端口
- '81:81' # 冒号左边可以改成自己服务器未被占用的端口
- '443:443' # 冒号左边可以改成自己服务器未被占用的端口
volumes:
- /root/docker_data/npm/data:/data # 冒号左边可以改路径,现在是表示把数据存放在在当前文件夹下的 data 文件夹中
- /root/docker_data/npm/etc/letsencrypt:/etc/letsencrypt # 冒号左边可以改路径

1
2
3
4
5
6
7
docker run -d --name npm \
-p 80:80 \
-p 443:443 \
-p 81:81 \
-v /root/docker_data/npm/data:/data \
-v /root/docker_data/npm/etc/letsencrypt:/etc/letsencrypt \
jc21/nginx-proxy-manager:latest

默认登陆名和密码:

1
2
Email:    admin@example.com
Password: changeme

SearXNG (搜索引擎)

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
version: '3.7'

services:
redis:
container_name: redis
image: "redis:alpine"
command: redis-server --save "" --appendonly "no"
networks:
- searxng
tmpfs:
- /var/lib/redis
cap_drop:
- ALL
cap_add:
- SETGID
- SETUID
- DAC_OVERRIDE

searxng:
container_name: searxng
image: searxng/searxng:latest
networks:
- searxng
ports:
- "8180:8080" # 这个冒号左边的端口可以更改,右边的不要改
volumes:
- /root/docker_data/searxng:/etc/searxng
environment:
- SEARXNG_BASE_URL=https://search.example.com/
cap_drop:
- ALL
cap_add:
- CHOWN
- SETGID
- SETUID
- DAC_OVERRIDE
logging:
driver: "json-file"
options:
max-size: "1m"
max-file: "1"
networks:
searxng:
ipam:
driver: default

Minimalist-web-notepad(在线剪切板/笔记)

pereorga/minimalist-web-notepad

1
docker run -d -p 8890:80 -v /mnt/notepad:/var/www/html/_tmp jdreinhardt/minimalist-web-notepad:latest

反代

1
2
3
4
5
6
7
8
9
10
11
 location / {
proxy_pass http://127.0.0.1:8006/;
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;
}

aria2-pro

  • 最基本的启动命令如下,你只需要完整替换<TOKEN>​字段(RPC密钥)即可启动。

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    docker run -d \
    --name aria2-pro \
    --restart unless-stopped \
    --log-opt max-size=1m \
    --network host \
    -e PUID=$UID \
    -e PGID=$GID \
    -e RPC_SECRET=<TOKEN> \
    -e RPC_PORT=6800 \
    -e LISTEN_PORT=6888 \
    -v $PWD/aria2-config:/config \
    -v $PWD/aria2-downloads:/downloads \
    p3terx/aria2-pro

Duplicati (备份)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
version: "2.1"
services:
duplicati:
image: lscr.io/linuxserver/duplicati
container_name: duplicati
environment:
- PUID=0
- PGID=0
- TZ=Asia/Shanghai
volumes:
- /root/data/docker_data/duplicati/config:/config
- /root/data/docker_data/duplicati/backups:/backups
- /root/data:/source
ports:
- 8080:8200
restart: unless-stopped

Microbin(剪切板)

https://github.com/szabodanika/microbin

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
version: '3.5'

services:
microbin:
image: danielszabo99/microbin:latest
container_name: microbin
restart: unless-stopped
environment:
- TZ=Asia/Shanghai
- MICROBIN_HIGHLIGHTSYNTAX=true
- MICROBIN_HASH_IDS=true
- MICROBIN_EDITABLE=true
- MICROBIN_PRIVATE=false
- MICROBIN_HIDE_FOOTER=true
- MICROBIN_HELP=true
# - MICROBIN_FOOTER_TEXT=xxx
- MICROBIN_HIDE_HEADER=true
- MICROBIN_HIDE_LOGO=false
- MICROBIN_NO_ETERNAL_PASTA=true
- MICROBIN_NO_FILE_UPLOAD=false
- MICROBIN_NO_LISTING=true
- MICROBIN_THREADS=2
- MICROBIN_TITLE=free-bin
- MICROBIN_PUBLIC_PATH=https://example.com/ # 记得改成自己的网址
- MICROBIN_QR=true
ports:
- 8089:8080 # 冒号左边可以改成自己需要的端口号
volumes:
- /roor/data/docker_data/microbin-data:/app/pasta_data # 冒号左边可以改自己想要的挂载路径

‍ChatGPT

选用服务器先测试一下是否可以访问ChatGPT:

1
bash <(curl -Ls https://cpp.li/openai)

1. Chatgpt-web

1
2
3
4
5
6
docker run -d \
-p 3002:3002 \
-e OPENAI_API_KEY=sk-xxx \
-e AUTH_SECRET_KEY=your-password \
--name chatgpt-web-2 \
chenzhaoyu94/chatgpt-web:latest

2. Chatgpt-next-web

1
2
3
4
5
6
docker run -d \
-p 3000:3000 \
-e OPENAI_API_KEY=sk-xxxx \
-e CODE=your-password \
--name chatgpt-next-web \
yidadaa/chatgpt-next-web:latest