如何在 Ubuntu 22.04 上安装 OpenProject
OpenProject 是一个开源的、基于 Web 的项目管理系统。 它为团队提供了一种安全可靠的方式来联系、组织工作并取得成果。 借助 OpenProject,您可以在一个地方组织自己的任务并将任务分配给队友。 其社区版涵盖了广泛的功能和插件,并且是免费的。 它提供了广泛的功能,例如项目规划和调度、Wiki、论坛、敏捷和 Scrum、Bug 跟踪等等。
这篇文章将解释如何在 Ubuntu 22.04 上使用 Docker 安装 OpenProject。
先决条件
- 运行 Ubuntu 22.04 的服务器。
- 服务器上配置了 root 密码。
入门
首先,您需要将系统软件包更新并升级到最新版本。 您可以使用以下命令来完成此操作:
apt update -y
apt upgrade -y
更新所有软件包后,您可以继续下一步。
安装 Docker
接下来,您需要在服务器上安装 Docker 引擎。 您可以通过运行以下命令来安装它:
apt install docker.io -y
安装 Docker 后,您可以使用以下命令验证 Docker 版本:
docker --version
您应该在以下输出中获取 Docker 版本:
Docker version 20.10.12, build 20.10.12-0ubuntu4
您还可以使用以下命令检查 Docker 状态:
systemctl status docker
您将得到以下输出:
? docker.service - Docker Application Container Engine Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-09-12 03:55:27 UTC; 27min ago TriggeredBy: ? docker.socket Docs: https://docs.docker.com Main PID: 2188 (dockerd) Tasks: 18 Memory: 175.3M CPU: 2min 52.389s CGroup: /system.slice/docker.service ??2188 /usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock Sep 12 04:05:02 ubuntu2204 dockerd[2188]: time="2022-09-12T04:05:02.260137217Z" level=info msg="Container failed to exit within 10s of signal> Sep 12 04:05:02 ubuntu2204 dockerd[2188]: time="2022-09-12T04:05:02.288143240Z" level=info msg="ignoring event" container=c69a4c77c21fcc30bf5> Sep 12 04:05:02 ubuntu2204 dockerd[2188]: time="2022-09-12T04:05:02.313368392Z" level=info msg="ignoring event" container=1e168552ee6decb4d38> Sep 12 04:05:02 ubuntu2204 dockerd[2188]: time="2022-09-12T04:05:02.346672185Z" level=info msg="ignoring event" container=4f042da15c0abe50ac0> Sep 12 04:05:03 ubuntu2204 dockerd[2188]: time="2022-09-12T04:05:03.128611054Z" level=info msg="ignoring event" container=d07c7ddcf4c5c8e1df3> Sep 12 04:05:03 ubuntu2204 dockerd[2188]: time="2022-09-12T04:05:03.471773239Z" level=info msg="ignoring event" container=f0095298f0394b4e97c> Sep 12 04:05:03 ubuntu2204 dockerd[2188]: time="2022-09-12T04:05:03.860303969Z" level=info msg="ignoring event" container=7c591187d6dea45ad9c> Sep 12 04:10:05 ubuntu2204 dockerd[2188]: time="2022-09-12T04:10:05.733958315Z" level=info msg="ignoring event" container=a9126dced469461963a> Sep 12 04:17:00 ubuntu2204 dockerd[2188]: time="2022-09-12T04:17:00.365019409Z" level=info msg="ignoring event" container=317a71b1e5e2810e618> Sep 12 04:19:40 ubuntu2204 dockerd[2188]: time="2022-09-12T04:19:40.133136639Z" level=info msg="ignoring event" container=e5fa71f4c2a7d8f3dc4>
下载并启动 OpenProject 容器
安装 OpenProject 最简单的方法是使用 Docker 容器启动它。 您可以通过运行以下命令来下载并运行它:
docker run -dit -p 8080:80 -e OPENPROJECT_SECRET_KEY_BASE=secret -e OPENPROJECT_HOST__NAME=127.0.0.1:8080 -e OPENPROJECT_HTTPS=false openproject/community:12
这将下载 OpenProject 社区 Docker 映像并启动它,如下所示:
Unable to find image 'openproject/community:12' locally 12: Pulling from openproject/community 76dff75df4d9: Pull complete 3e8c90a1c4bb: Pull complete b3662c105080: Pull complete ad5dcb7dd592: Pull complete fa57cc7ce341: Pull complete 9b3a1f58f992: Pull complete 3ba44da7772d: Pull complete bb99cfe1d593: Pull complete d9be85920c31: Pull complete 887163836f1b: Pull complete 8d9b5634408e: Pull complete 40cd37c7c054: Pull complete 8f3f7ae1eab6: Pull complete 0bad647edadc: Pull complete 7604d9da2c69: Pull complete 5064bcba96f5: Pull complete a31fefd0310b: Pull complete 57856090623a: Pull complete c5788f49d4cb: Pull complete Digest: sha256:5b3850c813b44e0e83b31ee3ee7e65a22a05009f5101132caee51b4c799adaa9 Status: Downloaded newer image for openproject/community:12 cecc63dbe7c8263cdf9813a5dee5d5cfda3e2f8b8cdb78b3d038679507fa7769
您可以使用以下命令验证下载的 Docker 镜像:
docker images
您将得到以下输出:
REPOSITORY TAG IMAGE ID CREATED SIZE openproject/community 12 88f613862e98 11 days ago 1.93GB
要检查 OpenProject 容器状态,请运行以下命令:
docker ps
您应该看到 OpenProject 容器已启动并侦听端口 8080:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES cecc63dbe7c8 openproject/community:12 "./docker/prod/entry…" 12 seconds ago Up 11 seconds 5432/tcp, 0.0.0.0:8080->80/tcp, :::8080->80/tcp silly_fermi
您还可以使用以下命令验证 OpenProject 容器日志:
docker logs cecc63dbe7c8
您将得到以下输出:
=> Booting Puma => Rails 7.0.3.1 application starting in production => Run `bin/rails server --help` for more startup options I, [2022-09-12T04:25:12.466164 #138] INFO -- : Using schema cache file /app/db/schema_cache.yml [138] Puma starting in cluster mode... [138] * Puma version: 5.6.4 (ruby 3.1.2-p20) ("Birdie's Version") [138] * Min threads: 4 [138] * Max threads: 16 [138] * Environment: production [138] * Master PID: 138 [138] * Workers: 2 [138] * Restarts: (?) hot (?) phased [138] * Preloading application [138] * Listening on http://0.0.0.0:8080 [138] Use Ctrl-C to stop [138] - Worker 1 (PID: 337) booted in 0.01s, phase: 0 [138] - Worker 0 (PID: 336) booted in 0.02s, phase: 0
将 Apache 配置为 OpenProject 的反向代理
可以看到,OpenProject监听8080端口。因此建议将Apache配置为反向代理,通过80端口访问OpenProject。
首先,使用以下命令安装 Apache Web 服务器包:
apt install apache2 -y
安装 Apache 后,使用以下命令启用所需的模块:
a2enmod proxy_http headers rewrite
接下来,使用以下命令创建 Apache 虚拟主机配置文件:
nano /etc/apache2/sites-available/openproject.conf
添加以下配置:
ServerName openproject.linuxbuz.com RewriteEngine on RewriteRule "^$" "/" [R,L] ProxyRequests off ProxyPreserveHost On ProxyPass http://127.0.0.1:8080/ ProxyPassReverse http://127.0.0.1:8080/
保存并关闭文件,然后使用以下命令激活 OpenProject 虚拟主机:
a2ensite openproject.conf
最后,重新启动 Apache 服务以应用更改:
systemctl reload apache2
您还可以使用以下命令检查 Apache 状态:
systemctl status apache2
您将得到以下输出:
? apache2.service - The Apache HTTP Server Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled) Active: active (running) since Mon 2022-09-12 04:26:23 UTC; 1min 30s ago Docs: https://httpd.apache.org/docs/2.4/ Process: 14508 ExecReload=/usr/sbin/apachectl graceful (code=exited, status=0/SUCCESS) Main PID: 14058 (apache2) Tasks: 55 (limit: 4579) Memory: 5.4M CPU: 98ms CGroup: /system.slice/apache2.service ??14058 /usr/sbin/apache2 -k start ??14512 /usr/sbin/apache2 -k start ??14513 /usr/sbin/apache2 -k start Sep 12 04:26:23 ubuntu2204 systemd[1]: Starting The Apache HTTP Server...
使用 Let’s Encrypt SSL 保护 OpenProject
还建议在 OpenProject 网站上启用 SSL。 首先,使用以下命令安装 Certbot 客户端包:
apt install python3-certbot-apache -y
接下来,运行以下命令为您的网站域下载并安装 Let’s Encrypt SSL。
certbot --apache -d openproject.linuxbuz.com
回答如下所示的所有问题以安装 Let’s Encrypt SSL:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): [email protected] - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017-w-v1.3-notice.pdf. You must agree in order to register with the ACME server. Do you agree? - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: (Y)es/(N)o: Y - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing, once your first certificate is successfully issued, to share your email address with the Electronic Frontier基金, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Account registered. Requesting a certificate for openproject.linuxbuz.com Successfully received certificate. Certificate is saved at: /etc/letsencrypt/live/openproject.linuxbuz.com/fullchain.pem Key is saved at: /etc/letsencrypt/live/openproject.linuxbuz.com/privkey.pem This certificate expires on 2022-12-11. These files will be updated when the certificate renews. Certbot has set up a scheduled task to automatically renew this certificate in the background. Deploying certificate Successfully deployed certificate for openproject.linuxbuz.com to /etc/apache2/sites-available/openproject-le-ssl.conf Added an HTTP->HTTPS rewrite in addition to other RewriteRules; you may wish to check for overall consistency. Congratulations! You have successfully enabled HTTPS on https://openproject.linuxbuz.com We were unable to subscribe you the EFF mailing list because your e-mail address appears to be invalid. You can try again later by visiting https://act.eff.org. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - If you like Certbot, please consider supporting our work by: * Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate * Donating to EFF: https://eff.org/donate-le - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
访问 OpenProject Web UI
现在,打开 Web 浏览器并使用 URL https://openproject.linuxbuz.com 访问 OpenProject。 您应该看到 OpenProject 欢迎页面:
单击“登录”按钮。 您应该看到 OpenProject 登录页面:
提供默认用户名和密码 admin / admin,然后单击“登录”按钮。 您应该看到密码更改屏幕:
更改您的默认密码并单击“保存”按钮。 您应该在以下屏幕上看到 OpenProject 仪表板:
结论
恭喜 您已经在 Ubuntu 22.04 上成功安装了带有 Docker 的 OpenProject。 您现在可以在您的组织中实施 OpenProject,并开始从中央位置管理和跟踪您的项目。
资讯来源:由a0资讯编译自THECOINREPUBLIC。版权归作者A0资讯所有,未经许可,不得转载