Instalación · 8 min read · Oct 31, 2025

Cómo instalar OpenProject en Ubuntu 22.04

OpenProject es un sistema de gestión de proyectos de código abierto y basado en la web. Proporciona una forma segura y confiable para que los equipos se conecten, estructuren su trabajo y logren resultados. Con OpenProject, puedes organizar tus propias tareas y asignar tareas a un compañero de equipo en un solo lugar. Su edición comunitaria abarca una amplia gama de características y complementos y es gratuita. Ofrece una amplia gama de características, como planificación y programación de proyectos, wikis, foros, Agile y Scrum, seguimiento de errores y más.

Esta publicación explicará cómo instalar OpenProject con Docker en Ubuntu 22.04.

Requisitos previos

  • Un servidor que ejecute Ubuntu 22.04.
  • Una contraseña de root configurada en el servidor.

Empezando

Primero, necesitarás actualizar y mejorar los paquetes de tu sistema a la última versión. Puedes hacerlo con el siguiente comando:

apt update -y  
apt upgrade -y

Una vez que todos los paquetes estén actualizados, puedes proceder al siguiente paso.

Instalar Docker

A continuación, necesitarás instalar el motor Docker en tu servidor. Puedes instalarlo ejecutando el siguiente comando:

apt install docker.io -y

Una vez que Docker esté instalado, puedes verificar la versión de Docker usando el siguiente comando:

docker --version

Deberías obtener la versión de Docker en la siguiente salida:

Docker version 20.10.12, build 20.10.12-0ubuntu4

También puedes verificar el estado de Docker con el siguiente comando:

systemctl status docker

Obtendrás la siguiente salida:

? 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>

Descargar y lanzar el contenedor de OpenProject

La forma más simple y fácil de instalar OpenProject es lanzarlo con un contenedor Docker. Puedes descargarlo y ejecutarlo ejecutando el siguiente comando:

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

Esto descargará la imagen Docker de la comunidad de OpenProject y la iniciará como se muestra a continuación:

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

Puedes verificar la imagen Docker descargada con el siguiente comando:

docker images

Obtendrás la siguiente salida:

REPOSITORY              TAG       IMAGE ID       CREATED       SIZE
openproject/community   12        88f613862e98   11 days ago   1.93GB

Para verificar el estado del contenedor de OpenProject, ejecuta el siguiente comando:

docker ps

Deberías ver que el contenedor de OpenProject está iniciado y escucha en el puerto 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

También puedes verificar los registros del contenedor de OpenProject usando el siguiente comando:

docker logs cecc63dbe7c8

Obtendrás la siguiente salida:

=> 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

Configurar Apache como un Proxy Inverso para OpenProject

Como puedes ver, OpenProject escucha en el puerto 8080. Por lo tanto, se recomienda configurar Apache como un proxy inverso para acceder a OpenProject a través del puerto 80.

Primero, instala el paquete del servidor web Apache usando el siguiente comando:

apt install apache2 -y

Una vez que Apache esté instalado, habilita los módulos requeridos con el siguiente comando:

a2enmod proxy_http headers rewrite

A continuación, crea un archivo de configuración de host virtual de Apache con el siguiente comando:

nano /etc/apache2/sites-available/openproject.conf

Agrega las siguientes configuraciones:


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/



Guarda y cierra el archivo, luego activa el host virtual de OpenProject con el siguiente comando:

a2ensite openproject.conf

Finalmente, reinicia el servicio de Apache para aplicar los cambios:

systemctl reload apache2

También puedes verificar el estado de Apache con el siguiente comando:

systemctl status apache2

Obtendrás la siguiente salida:

? 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...

Asegurar OpenProject con SSL de Let’s Encrypt

También se recomienda habilitar SSL en el sitio web de OpenProject. Primero, instala el paquete del cliente Certbot con el siguiente comando:

apt install python3-certbot-apache -y

A continuación, ejecuta el siguiente comando para descargar e instalar el SSL de Let’s Encrypt para el dominio de tu sitio web.

certbot --apache -d openproject.linuxbuz.com

Responde todas las preguntas como se muestra a continuación para instalar el SSL de Let’s Encrypt:

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 Foundation, 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
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Acceder a la interfaz web de OpenProject

Ahora, abre tu navegador web y accede a OpenProject usando la URL https://openproject.linuxbuz.com. Deberías ver la página de bienvenida de OpenProject:

Haz clic en el botón Iniciar sesión. Deberías ver la página de inicio de sesión de OpenProject:

Proporciona el nombre de usuario y la contraseña predeterminados como admin / admin, luego haz clic en el botón Iniciar sesión. Deberías ver la pantalla de cambio de contraseña:

Cambia tu contraseña predeterminada y haz clic en el botón Guardar. Deberías ver el panel de OpenProject en la siguiente pantalla:

Conclusión

¡Felicidades! has instalado OpenProject con éxito con Docker en Ubuntu 22.04. Ahora puedes implementar OpenProject en tu organización y comenzar a gestionar y rastrear tu proyecto desde un lugar central.

Share: X/Twitter LinkedIn

Recibe nuevas publicaciones en tu bandeja de entrada.

No spam. Cancela la suscripción en cualquier momento.