用开源DSpace轻量版搭建公开数字档案馆 提升社会档案责任意识
一、准备环境:轻量服务器+Docker(15分钟)
选Docker是因为无需手动配置复杂的Java、PostgreSQL依赖,零基础也能跑。
1. 准备轻量云服务器
- 配置要求:2核4G以上,硬盘50G以上(初期公开馆藏小用阿里云/腾讯云/华为云99元/年的学生机/新用户特惠机即可)
- 操作系统:必须选Ubuntu 22.04 LTS(后续命令全适配此系统)
- 开放端口:TCP 8080、80(后期绑定域名用)
2. 登录服务器并安装Docker
用SSH工具(推荐Xshell 7免费版/MobaXterm免费版)连接服务器后,复制执行以下命令:
```bash 1. 更新系统包索引 sudo apt update -y 2. 安装Docker依赖 sudo apt install apt-transport-https ca-certificates curl software-properties-common -y 3. 添加Docker官方GPG密钥 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg 4. 添加Docker稳定版仓库 echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null 5. 再次更新索引并安装Docker sudo apt update -y sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y 6. 验证安装(输出版本号即成功) docker --version docker compose version ```二、一键部署DSpace轻量公开版(5分钟)
这里用DSpace官方维护的轻量Demo配置包修改而来,已关闭后台注册、权限验证,完全开放给公众浏览/下载公开馆藏。
1. 创建部署目录并下载配置文件
复制执行以下命令:
```bash 1. 创建部署目录 mkdir -p ~/dspace-open && cd ~/dspace-open 2. 下载修改好的docker-compose.yml和初始化SQL curl -fsSL https://raw.githubusercontent.com/OpenArchivesGroup/dspace-simple-open/main/docker-compose.yml -o docker-compose.yml curl -fsSL https://raw.githubusercontent.com/OpenArchivesGroup/dspace-simple-open/main/init-open.sql -o init-open.sql ```2. 修改管理员密码(必须做,防止被恶意重置)
用vim编辑器打开docker-compose.yml(如果不会用vim,下载到本地用VS Code改完再用SCP工具上传到~/dspace-open目录),找到第32行左右的ADMIN_PASS=demo,把demo改成你自己的8位以上复杂密码(比如DSpace2024!Open),然后保存退出。
3. 启动容器
复制执行以下命令,首次启动会自动拉取镜像并初始化,大概3-5分钟:
```bash docker compose up -d ```验证启动成功:执行docker compose ps,看到dspace、dspace-db、dspace-solr三个容器状态都是Up即可。
三、基础配置:公开门户+默认馆藏分类(10分钟)
访问地址:http://你的服务器公网IP:8080/xmlui(必须带/xmlui后缀,这是默认的公开友好界面)
1. 登录后台
在xmlui首页右上角点击Log In,用户名是dspace@example.com,密码是刚才修改的ADMIN_PASS。
2. 上传公开馆藏分类LOGO/描述
- 登录后点击顶部导航栏的Admin → Communities, Collections & Items
- 默认有一个叫“Open Archives Community”的顶级社区,点击它右侧的Edit
- 上传800x200像素的PNG/JPG图片作为LOGO,填写面向公众的简短中文描述(比如“本馆公开XX街道/公司/学校的历史档案,欢迎查阅、下载”),最后点击Save Changes
3. 创建面向公众的具体馆藏分类
比如“XX街道2000-2020年地方志”“XX学校2010-2024年校报”:
- 回到顶级社区页面,点击右侧的Create Collection
- 填写Collection Name(必须用中文)、面向公众的Short Description和Introduction,其他默认即可
- 点击Next → Save Collection
四、批量上传公开档案(20分钟)

DSpace支持批量导入ZIP压缩包,每个ZIP包含“档案文件+对应元数据CSV”。
1. 准备单个档案的元数据CSV模板
复制以下内容保存为metadata.csv(必须用UTF-8无BOM编码!否则中文乱码):
元数据字段说明:
- filename:必须和ZIP里的档案文件名完全一致(大小写敏感)
- dc.title:档案标题(必填)
- dc.creator:档案创建者(必填)
- dc.date.issued:档案发布时间(必填,格式YYYY-MM-DD)
- dc.description:档案内容简介(必填)
2. 制作批量导入ZIP
- 把所有要公开的档案文件和刚才的metadata.csv放在同一个文件夹
- 直接压缩这个文件夹里的所有文件(不能压缩文件夹本身!),命名为
batch-upload-1.zip
3. 后台批量导入
- 登录后台后点击顶部导航栏的Admin → Batch Import
- 选择刚才创建的具体馆藏分类(比如“XX学校2010-2024年校报”)
- 在Select a batch import file处上传刚才的ZIP
- 其他默认,点击Next → Import Now
- 看到“Batch import completed successfully”即成功,回到xmlui首页就能看到公开档案
五、绑定域名(可选,提升公众访问体验)
如果有域名(比如archive.xxx.com),做以下操作:
1. 域名解析
去域名服务商后台添加A记录,主机记录填archive,记录值填你的服务器公网IP。
2. 用Nginx反向代理+免费SSL证书
复制执行以下命令安装Nginx和Certbot:
```bash 1. 安装Nginx sudo apt install nginx -y 2. 启动并设置开机自启 sudo systemctl start nginx sudo systemctl enable nginx 3. 安装Certbot和Nginx插件 sudo apt install certbot python3-certbot-nginx -y ```3. 配置Nginx反向代理
用vim编辑器创建并打开配置文件:
```bash sudo vim /etc/nginx/sites-available/dspace-open ```复制以下内容粘贴进去,把archive.xxx.com改成你的实际域名:
```nginx server { listen 80; server_name archive.xxx.com; location / { proxy_pass http://127.0.0.1:8080/xmlui; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; } } ```保存退出后执行:
```bash 1. 创建软链接到sites-enabled sudo ln -s /etc/nginx/sites-available/dspace-open /etc/nginx/sites-enabled/ 2. 测试配置文件 sudo nginx -t 3. 重启Nginx sudo systemctl restart nginx ```4. 申请免费SSL证书
复制执行以下命令,按提示输入邮箱、同意条款,Certbot会自动配置SSL:
```bash sudo certbot --nginx -d archive.xxx.com ```配置成功后,直接访问https://archive.xxx.com就能看到公开的数字档案馆了。