一、本地环境检查

1.1检查Docker服务状态

检查Docker服务是否正常运行,确保Docker正常运行。

root@xin-virtual-machine:~# systemctl status docker

1.2检查Docker版本

root@xin-virtual-machine:~# docker -v
Docker version 28.1.1, build 4eba377

1.3检查docker compromise版本

root@xin-virtual-machine:~# docker -v
Docker version 28.1.1, build 4eba377

二、拉取bewCloud镜像

docker pull registry.cn-hangzhou.aliyuncs.com/jeson/bewcloud:latest
docker pull registry.cn-hangzhou.aliyuncs.com/jeson/postgres:15

三、部署bewCloud服务

3.1创建部署目录

  • 创建部署目录
mkdir -p /data/bewcloud/{files,data}   &&  cd /data/bewcloud/
  • 设置目录权限
chmod -R 777 /data/bewcloud/

3.2编辑变量文件

vim .env
PORT=8000
BASE_URL="http://192.168.3.88:7600"
POSTGRESQL_HOST="postgresql" # docker container name or external hostname/IP
POSTGRESQL_USER="postgres"
POSTGRESQL_PASSWORD="fake"
POSTGRESQL_DBNAME="bewcloud"
POSTGRESQL_PORT=5432
POSTGRESQL_CAFILE=""
JWT_SECRET="fake"
PASSWORD_SALT="fake"
BREVO_API_KEY="fake"
CONFIG_ALLOW_SIGNUPS="false"
CONFIG_ENABLED_APPS="news,notes,photos,expenses" # dashboard and files cannot be disabled
CONFIG_FILES_ROOT_PATH="data-files"
CONFIG_ENABLE_EMAILS="false" # if true, email verification will be required for signups (using Brevo)
CONFIG_ENABLE_FOREVER_SIGNUP="true" # if true, all signups become active for 100 years
# CONFIG_ALLOWED_COOKIE_DOMAINS="example.com,example.net" # can be set to allow more than the BASE_URL's domain for session cookies
# CONFIG_SKIP_COOKIE_DOMAIN_SECURITY="true" # if true, the cookie domain will not be strictly set and checked against. This skipping slightly reduces security, but is usually necessary for reverse proxies like Cloudflare Tunnel.
# CUSTOM_TITLE=""
# CUSTOM_DESCRIPTION=""
HELP_EMAIL="help@bewcloud.com" # if empty, "need help" sections will be disabled

3.3编辑部署文件

vim docker-compose.yaml
services:
website:
image: registry.cn-hangzhou.aliyuncs.com/jeson/bewcloud:latest
container_name: bewcloud-web
restart: always
mem_limit: '256m'
ports:
- 5200:8000
volumes:
- /data/bewcloud/files:/app/data-files
env_file: .env
depends_on:
- postgresql
postgresql:
image: registry.cn-hangzhou.aliyuncs.com/jeson/postgres:15
container_name: bewcloud-db
restart: on-failure
ulimits:
memlock:
soft: -1
hard: -1
mem_limit: '256m'
volumes:
- /data/bewcloud/data:/var/lib/postgresql/data
# ports:
#   - 5432:5432
environment:
- POSTGRES_USER=${POSTGRESQL_USER}
- POSTGRES_PASSWORD=${POSTGRESQL_PASSWORD}
- POSTGRES_DB=${POSTGRESQL_DBNAME}

3.4创建bewCloud容器

docker compose up -d

3.5查看bewCloud容器状态

root@xin-virtual-machine:/data/bewcloud# docker compose ps
NAME           IMAGE                                                     COMMAND                   SERVICE      CREATED          STATUS          PORTS
bewcloud-db    registry.cn-hangzhou.aliyuncs.com/jeson/postgres:15       "docker-entrypoint.s…"   postgresql   34 seconds ago   Up 34 seconds   5432/tcp
bewcloud-web   registry.cn-hangzhou.aliyuncs.com/jeson/bewcloud:latest   "/tini -- docker-ent…"   website      34 seconds ago   Up 34 seconds   0.0.0.0:5200->8000/tcp, [::]:5200->8000/tcp

3.6检查bewCloud容器日志

docker compose logs

四、访问DumbAssets服务

4.1bewCloud初始化配置

root@xin-virtual-machine:/data/bewcloud# docker compose  --env-file .env run --rm website bash -c "cd /app && make migrate-db"[+] Creating 1/1
✔ Container bewcloud-db  Runn...                         0.0s
deno run --allow-net --allow-read --allow-env migrate-db.ts
Running "001-base.pgsql"...
Success!
Running "002-news-app.pgsql"...
Success!
Running "003-expenses-app.pgsql"...
Success!
Running "004-public-file-sharing.pgsql"...
Success!

4.2注册账号

五、bewCloud基本使用

5.1上传文件

在Files页面,我们点击“+”选项,上传本地文档(当然不止文档)。

5.2笔记功能

在notes页面,我们可以编辑md格式的文本笔记。

5.3RSS订阅功能

六、总结

        通过本次实践,我们成功利用 Docker 快速部署了bewCloud轻量级云存储服务,整个过程简洁高效,体现了容器化部署的强大优势。bewCloud 不仅提供了文件存储、笔记管理等核心功能,还集成了 RSS 订阅等实用特性,满足了个人用户的多样化需求。整个服务运行稳定,界面友好,且完全掌握在自己手中,保障了数据隐私与安全。未来可进一步探索其高级配置与持久化备份策略,提升服务的可靠性与可扩展性。

posted on 2025-09-18 08:09  ycfenxi  阅读(6)  评论(0)    收藏  举报