
这是一个简单的OpenProject Docker镜像,当前处于实验阶段,旨在提供一种快速部署OpenProject项目管理工具的方式。
fig scale)1. 构建镜像
首先需要构建镜像:
bashdocker build -t linki/openproject:simple .
2. 启动PostgreSQL容器
在运行Rails应用前,需要准备数据库。启动一个PostgreSQL容器:
bashdocker run -d --name postgres \ -e POSTGRES_USER=openproject -e POSTGRES_PASSWORD=openproject postgres:9.4
使用官方PostgreSQL 9.4镜像,并为容器命名以便后续链接。同时创建用于连接的用户和密码。
3. 数据库迁移和种子数据
Rails应用通常需要执行一些rake命令。大部分在构建镜像时已完成,但数据库相关任务需单独执行。
迁移数据库
bashdocker run -it --rm --link postgres:database \ -e DATABASE_URL=postgres://openproject:openproject@database:5432/openproject \ linki/openproject:simple bundle exec rake db:migrate
生成种子数据
在生产环境中运行rake db:seed会生成最小化的种子数据:
bashdocker run -it --rm --link postgres:database \ -e DATABASE_URL=postgres://openproject:openproject@database:5432/openproject \ -e RAILS_ENV=production -e SECRET_TOKEN=foobar \ linki/openproject:simple bundle exec rake db:seed
若需要更复杂的种子数据(包含大量示例工作包),可在开发环境中运行:
bashdocker run -it --rm --link postgres:database \ -e DATABASE_URL=postgres://openproject:openproject@database:5432/openproject \ linki/openproject:simple bundle exec rake db:seed
4. 启动应用服务器
在后台运行应用服务器:
bashdocker run -d -p 3000:3000 --link postgres:database \ -e DATABASE_URL=postgres://openproject:openproject@database:5432/openproject linki/openproject:simple
现在可通过Docker主机的IP地址(端口3000)访问应用。若使用boot2docker,可访问boot2docker.me:3000。使用admin/admin登录。
5. 生产环境运行
在生产环境中运行,需指定RAILS_ENV和SECRET_TOKEN:
bashdocker run -d -p 3000:3000 --link postgres:database \ -e DATABASE_URL=postgres://openproject:openproject@database:5432/openproject \ -e RAILS_ENV=production -e SECRET_TOKEN=foobar \ linki/openproject:simple
6. 运行Worker进程
可在单独容器中运行worker进程:
bashdocker run -d --link postgres:database \ -e DATABASE_URL=postgres://openproject:openproject@database:5432/openproject \ linki/openproject:simple bundle exec rake jobs:work
通过Fig(现通常使用docker-compose)可简化操作:
1. 构建镜像
bashfig build
2. 迁移数据库
bashfig run web bundle exec rake db:migrate
3. 生成种子数据
bashfig run web bundle exec rake db:seed
4. 启动服务
启动数据库、OpenProject和worker进程:
bashfig up -d
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
docker search 限制
站内搜不到镜像
离线 save/load
插件要用 plugin install
WSL 拉取慢
安全与 digest
新手拉取配置
镜像合规机制
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
域名连通性排查
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务