本教程采用 Docker Compose 方式进行安装,这是目前最推荐、最简单、最不容易出错的方式,尤其适合新手和快速部署。

重要前提:Docker 安装
在开始之前,请确保你的服务器已经正确安装了 Docker 和 Docker Compose,如果没有,请先完成这一步。
Ubuntu 系统安装 Docker 和 Docker Compose:
# 更新软件包索引 sudo apt-get update # 安装必要的包 sudo apt-get install -y apt-transport-https ca-certificates curl gnupg lsb-release # 添加 Docker 的官方 GPG 密钥 curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg # 设置稳定版的仓库 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 # 再次更新并安装 Docker Engine sudo apt-get update sudo apt-get install -y docker-ce docker-ce-cli containerd.io # 安装 Docker Compose sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose sudo chmod +x /usr/local/bin/docker-compose # 将当前用户添加到 docker 组,避免每次使用 sudo sudo usermod -aG docker $USER # !!! 重要:退出当前终端并重新登录,或使用 `newgrp docker` 使组变更生效 !!!
DSpace 7 安装教程 (Docker Compose 方式)
第一步:下载 DSpace 源码
我们使用 DSpace 官方提供的 dspace-angular 项目,它包含了 DSpace 7 的所有代码和配置。
# 创建一个工作目录并进入 mkdir dspace-installation cd dspace-installation # 克隆官方项目仓库 (我们使用 7.6 版本作为示例) git clone -b dspace-7.6 https://github.com/DSpace/dspace-angular.git
第二步:配置 DSpace
进入下载好的 dspace-angular 目录,这里存放着 DSpace 的核心代码和 Docker Compose 配置文件。

cd dspace-angular
-
创建
.env配置文件 DSpace 使用一个名为.env的文件来管理环境变量,官方提供了一个模板文件,我们只需要复制一份并修改即可。cp .env.template .env
-
编辑
.env文件 使用你喜欢的文本编辑器(如nano或vim)打开.env文件。nano .env
你需要至少修改以下几个关键配置项:
# ---------------------------- # 核心配置 # ---------------------------- # 数据库密码,请务必修改为一个强密码! # PostgreSQL 数据库的密码 POSTGRES_PASSWORD=your_strong_password_here # DSpace 管理员邮箱和密码 # 安装完成后,这个邮箱将成为管理员账户 DSPACE_ADMIN_EMAIL=admin@example.com DSPACE_ADMIN_PASSWORD=your_admin_password_here # DSpace 的访问地址 # 这是外部访问 DSpace 的 URL,非常重要!请确保填写正确的域名或 IP 地址。 # 如果是本地测试,可以使用 http://localhost:8080 # 如果是服务器,请填写你的公网 IP 或域名,http://yourdomain.com DSPACE_HOSTNAME=http://localhost:8080 # ---------------------------- # 可选配置 # ---------------------------- # 如果你需要通过 HTTPS 访问,请将上面的 HTTP 改为 HTTPS,并取消下面两行的注释 # DSPACE_HOSTNAME=https://yourdomain.com # DSPACE_SSL=true # 时区设置,Asia/Shanghai DSPACE_TIMEZONE=Asia/Shanghai
修改完成后,保存并关闭文件。 (在
nano中按Ctrl+X,然后按Y,最后按Enter)
(图片来源网络,侵删)
第三步:构建和启动 DSpace
万事俱备,我们可以使用 Docker Compose 来一键构建和启动 DSpace 的所有服务(包括后端、前端、数据库等)。
在 dspace-angular 目录下执行以下命令:
# 构建并启动所有服务 # 首次启动会下载大量镜像并编译,可能需要较长时间(10-30分钟不等,取决于网络) docker-compose up --build -d
--build: 强制重新构建 Docker 镜像,确保使用最新的代码。-d: 在后台运行容器。
你可以通过以下命令查看启动状态:
# 查看正在运行的容器 docker ps # 查看 DSpace 相关服务的日志输出(如果遇到问题,这个命令非常有用) docker-compose logs -f
当看到所有容器状态都为 Up 时,表示 DSpace 已经成功启动并运行。
第四步:初始化数据库和安装
DSpace 容器启动后,并不会自动创建数据库表和初始化数据,你需要手动执行一个初始化脚本来完成这一步。
# 进入 dspace-angular 容器内部 docker-compose exec dspace /bin/bash # 在容器内部,执行初始化脚本 # 这个脚本会创建数据库表、加载初始数据、创建管理员账户等 ./dspace/bin/dspace database migrate
脚本执行过程中,你可能会看到一些提示,Create a new admin user? (Y/n),直接按 Enter 即可,它会使用 .env 文件中你配置的管理员邮箱和密码。
等待脚本执行完毕,看到类似 Successfully ran all migrations. 的输出后,输入 exit 退出容器。
第五步:访问 DSpace
打开你的浏览器,访问你在 .env 文件中配置的 DSPACE_HOSTNAME。
如果你配置的是 http://localhost:8080,那么就在浏览器地址栏输入 http://localhost:8080。
你应该能看到 DSpace 的首页了!使用你在 .env 文件中设置的管理员邮箱和密码登录,你将拥有管理员权限。
后续管理常用命令
-
停止 DSpace 服务:
docker-compose down
-
重启 DSpace 服务:
docker-compose restart
-
查看日志:
# 查看所有实时日志 docker-compose logs -f # 查看特定服务的日志,例如后端 docker-compose logs -f dspace
-
重新安装/重置 DSpace: 如果你想完全重新安装,最简单的方法是删除所有数据并重新开始。
# 停止并删除所有容器和网络 docker-compose down # 删除 DSpace 的数据卷(数据库、索引等数据) # 警告:此操作会删除所有数据,不可恢复! docker volume rm dspace-angular_ds-data dspace-angular_ds-postgres-data dspace-angular_ds-solr-data
你可以从 第三步 开始,重新执行
docker-compose up --build -d和数据库初始化。
总结与排错
- 网络问题: 首次构建时,下载 Docker 镜像和前端依赖包可能会很慢或失败,如果网络不佳,可以考虑配置国内 Docker 镜像源。
- 端口冲突: 确保
8080(DSpace Web UI),5432(PostgreSQL),8983(Solr) 等端口没有被其他服务占用,你可以通过docker-compose.yml文件修改这些端口映射。 - 内存不足: 构建前端需要较多内存,如果服务器内存小于 2GB,可能会构建失败,可以考虑增加 Swap 分区或使用配置更高的服务器。
- 访问 404 或 500 错误: 首先检查
docker-compose logs,查看后端和前端服务是否有报错信息,通常日志会给出明确的错误原因。
恭喜你!你已经成功安装并运行了 DSpace 7,接下来你可以探索管理后台,开始配置你的机构知识库了。
