mirror of
https://github.com/opf/openproject.git
synced 2026-06-14 03:30:14 +00:00
Rename openproject/community to openproject/openproject
This commit is contained in:
@@ -18,7 +18,7 @@ permissions:
|
||||
contents: read # to fetch code (actions/checkout)
|
||||
|
||||
env:
|
||||
REGISTRY_IMAGE: openproject/community
|
||||
REGISTRY_IMAGE: openproject/openproject
|
||||
|
||||
jobs:
|
||||
extract_version:
|
||||
|
||||
@@ -95,7 +95,7 @@ OpenProject is continuously tested, developed, and distributed using the followi
|
||||
| Edge | Automatic deployments through [GitHub actions](https://github.com/opf/openproject/blob/dev/.github/workflows/continuous-delivery.yml) for instances on openproject-edge.com<br>Subject for continuous QA, acceptance and regression testing. | Next minor or major release planned and developed in our [community instance](https://community.openproject.org/projects/openproject/) | On every push to `opf/openproject#dev` |
|
||||
| Stage | Automatic deployments through [GitHub actions](https://github.com/opf/openproject/blob/dev/.github/workflows/continuous-delivery.yml) for instances on openproject-stage.com.<br>Subject for QA and acceptance testing of bugfix prior to stable releases. | Next patch release of the current stable release following our [release plan](https://community.openproject.org/projects/openproject/work_packages?query_id=918) | On every push to `release/X.Y`, where `X.Y` is the current stable release major and minor versions. |
|
||||
| Production<br>(SaaS / Cloud) | Production cloud environments. Deployed manually with the latest stable release | Stable releases | Manually |
|
||||
| Production<br>(Docker images) | [Official public OpenProject docker images](https://hub.docker.com/r/openproject/community/)<br>Continuous delivery for development versions using `dev-*`tags.<br>Stable releases through major, minor, or patch level tags. | Development (`dev`, `dev-slim` tag)<br>Stable releases (`X`, `X.Y`, `X.Y.Z`, `X-slim`, `X.Y-slim`, `X.Y.Z-slim`) | Automatically on new releases of the OpenProject application |
|
||||
| Production<br>(Docker images) | [Official public OpenProject docker images](https://hub.docker.com/r/openproject/openproject/)<br>Continuous delivery for development versions using `dev-*`tags.<br>Stable releases through major, minor, or patch level tags. | Development (`dev`, `dev-slim` tag)<br>Stable releases (`X`, `X.Y`, `X.Y.Z`, `X-slim`, `X.Y-slim`, `X.Y.Z-slim`) | Automatically on new releases of the OpenProject application |
|
||||
| Production<br>(Packages) | [Official public OpenProject Linux packages](../../installation-and-operations/installation/packaged/) <br><br>Stable releases for supported distributions | Stable releases | Automatically on new releases of the OpenProject application |
|
||||
| Production<br>(Helm chart) | [Official public OpenProject Helm charts](../../installation-and-operations/installation/helm-chart/)<br>Stable releases | Stable releases (configurable through container tags) | Updates to Helm chart are manual, underlying deployment uses OpenProject docker images |
|
||||
| PullPreview | Temporary instances for development of features scope to a pull request. | Feature branches | Automatically deployed when developers/QA request a pull preview instance by labelling pull requests with the `PullPreview` tag. |
|
||||
|
||||
@@ -62,7 +62,7 @@ volumes:
|
||||
x-op-restart-policy: &restart_policy
|
||||
restart: unless-stopped
|
||||
x-op-image: &image
|
||||
image: openproject/community:${TAG:-12}
|
||||
image: openproject/openproject:${TAG:-14}
|
||||
x-op-app: &app
|
||||
<<: [*image, *restart_policy]
|
||||
environment:
|
||||
@@ -109,7 +109,7 @@ volumes:
|
||||
x-op-restart-policy: &restart_policy
|
||||
restart: unless-stopped
|
||||
x-op-image: &image
|
||||
image: openproject/community:${TAG:-12}
|
||||
image: openproject/openproject:${TAG:-14}
|
||||
x-op-app: &app
|
||||
<<: [*image, *restart_policy]
|
||||
environment:
|
||||
|
||||
@@ -34,7 +34,7 @@ point to an external database.
|
||||
Example:
|
||||
|
||||
```shell
|
||||
docker run -d ... -e DATABASE_URL=postgres://user:pass@host:port/dbname openproject/community:13
|
||||
docker run -d ... -e DATABASE_URL=postgres://user:pass@host:port/dbname openproject/openproject:14
|
||||
```
|
||||
|
||||
Best practice is using the file `docker-compose.override.yml`. If you run the Compose based docker stack, you can simply override the `DATABASE_URL` environment variable, and remove the `db` service from the `docker-compose.yml` file, but because by pulling a new version `docker-compose.yml` might get replaced. Then you can restart the stack with:
|
||||
|
||||
@@ -15,7 +15,7 @@ services:
|
||||
web: &openproject
|
||||
environment:
|
||||
- DATABASE_URL=postgres://postgres:p4ssw0rd@database/openproject
|
||||
image: openproject/community:10
|
||||
image: openproject/openproject:14
|
||||
command: ./docker/web
|
||||
worker:
|
||||
<<: *openproject
|
||||
|
||||
@@ -107,7 +107,7 @@ docker run -it -p 8080:80 \
|
||||
-e OPENPROJECT_HOST__NAME=localhost:8080 \
|
||||
-e OPENPROJECT_HTTPS=false \
|
||||
-e OPENPROJECT_DEFAULT__LANGUAGE=en \
|
||||
openproject/community:13
|
||||
openproject/openproject:14
|
||||
```
|
||||
|
||||
Explanation of the used configuration values:
|
||||
@@ -137,7 +137,7 @@ docker run -d -p 8080:80 \
|
||||
-e OPENPROJECT_SECRET_KEY_BASE=secret \
|
||||
-e OPENPROJECT_HOST__NAME=localhost:8080 \
|
||||
-e OPENPROJECT_HTTPS=false \
|
||||
openproject/community:13
|
||||
openproject/openproject:14
|
||||
```
|
||||
|
||||
**Note**: We've had reports of people being unable to start OpenProject this way
|
||||
@@ -169,7 +169,7 @@ docker run -d -p 8080:80 --name openproject \
|
||||
-e OPENPROJECT_SECRET_KEY_BASE=secret \
|
||||
-v /var/lib/openproject/pgdata:/var/openproject/pgdata \
|
||||
-v /var/lib/openproject/assets:/var/openproject/assets \
|
||||
openproject/community:13
|
||||
openproject/openproject:14
|
||||
```
|
||||
|
||||
Please make sure you set the correct public facing hostname in `OPENPROJECT_HOST__NAME`. If you don't have a load-balancing or proxying web server in front of your docker container,
|
||||
@@ -426,7 +426,7 @@ end
|
||||
**3. Create the `Dockerfile`** in the same folder. The contents have to look like this:
|
||||
|
||||
```dockerfile
|
||||
FROM openproject/community:13
|
||||
FROM openproject/openproject:14
|
||||
|
||||
# If installing a local plugin (using `path:` in the `Gemfile.plugins` above),
|
||||
# you will have to copy the plugin code into the container here and use the
|
||||
@@ -450,7 +450,7 @@ All the Dockerfile does is copy your custom plugins gemfile into the image, inst
|
||||
If you are using the `-slim` tag you will need to do the following to add your plugin.
|
||||
|
||||
```
|
||||
FROM openproject/community:13 AS plugin
|
||||
FROM openproject/openproject:14 AS plugin
|
||||
|
||||
# If installing a local plugin (using `path:` in the `Gemfile.plugins` above),
|
||||
# you will have to copy the plugin code into the container here and use the
|
||||
@@ -465,7 +465,7 @@ COPY Gemfile.plugins /app/
|
||||
RUN bundle config unset deployment && bundle install && bundle config set deployment 'true'
|
||||
RUN ./docker/prod/setup/postinstall.sh
|
||||
|
||||
FROM openproject/community:13-slim
|
||||
FROM openproject/openproject:14-slim
|
||||
|
||||
COPY --from=plugin /usr/bin/git /usr/bin/git
|
||||
COPY --chown=$APP_USER:$APP_USER --from=plugin /app/vendor/bundle /app/vendor/bundle
|
||||
@@ -489,7 +489,7 @@ The `-t` option is the tag for your image. You can choose what ever you want.
|
||||
**5. Run the image**
|
||||
|
||||
You can run the image just like the normal OpenProject image (as shown earlier).
|
||||
You just have to use your chosen tag instead of `openproject/community:13`.
|
||||
You just have to use your chosen tag instead of `openproject/openproject:14`.
|
||||
To just give it a quick try you can run this:
|
||||
|
||||
```shell
|
||||
@@ -508,7 +508,7 @@ The installation works the same as described above. The only difference is that
|
||||
On a system that has access to the internet run the following.
|
||||
|
||||
```shell
|
||||
docker pull openproject/community:13 && docker save openproject/community:13 | gzip > openproject-12.tar.gz
|
||||
docker pull openproject/openproject:14 && docker save openproject/openproject:14 | gzip > openproject-12.tar.gz
|
||||
```
|
||||
|
||||
This creates a compressed archive containing the latest OpenProject docker image.
|
||||
@@ -709,12 +709,12 @@ Once this has finished you should see something like this when running `docker s
|
||||
docker service ls
|
||||
ID NAME MODE REPLICAS IMAGE PORTS
|
||||
kpdoc86ggema openproject_cache replicated 1/1 memcached:latest
|
||||
qrd8rx6ybg90 openproject_cron replicated 1/1 openproject/community:13
|
||||
qrd8rx6ybg90 openproject_cron replicated 1/1 openproject/openproject:14
|
||||
cvgd4c4at61i openproject_db replicated 1/1 postgres:13
|
||||
uvtfnc9dnlbn openproject_proxy replicated 1/1 openproject/community:13 *:8080->80/tcp
|
||||
g8e3lannlpb8 openproject_seeder replicated 0/1 openproject/community:13
|
||||
canb3m7ilkjn openproject_web replicated 1/1 openproject/community:13
|
||||
7ovn0sbu8a7w openproject_worker replicated 1/1 openproject/community:13
|
||||
uvtfnc9dnlbn openproject_proxy replicated 1/1 openproject/openproject:14 *:8080->80/tcp
|
||||
g8e3lannlpb8 openproject_seeder replicated 0/1 openproject/openproject:14
|
||||
canb3m7ilkjn openproject_web replicated 1/1 openproject/openproject:14
|
||||
7ovn0sbu8a7w openproject_worker replicated 1/1 openproject/openproject:14
|
||||
```
|
||||
|
||||
You can now access OpenProject under `http://0.0.0.0:8080`.
|
||||
@@ -752,12 +752,12 @@ This will take a moment to converge. Once done you should see something like the
|
||||
docker service ls
|
||||
ID NAME MODE REPLICAS IMAGE PORTS
|
||||
kpdoc86ggema openproject_cache replicated 1/1 memcached:latest
|
||||
qrd8rx6ybg90 openproject_cron replicated 1/1 openproject/community:13
|
||||
qrd8rx6ybg90 openproject_cron replicated 1/1 openproject/openproject:14
|
||||
cvgd4c4at61i openproject_db replicated 1/1 postgres:10
|
||||
uvtfnc9dnlbn openproject_proxy replicated 2/2 openproject/community:13 *:8080->80/tcp
|
||||
g8e3lannlpb8 openproject_seeder replicated 0/1 openproject/community:13
|
||||
canb3m7ilkjn openproject_web replicated 6/6 openproject/community:13
|
||||
7ovn0sbu8a7w openproject_worker replicated 1/1 openproject/community:13
|
||||
uvtfnc9dnlbn openproject_proxy replicated 2/2 openproject/openproject:14 *:8080->80/tcp
|
||||
g8e3lannlpb8 openproject_seeder replicated 0/1 openproject/openproject:14
|
||||
canb3m7ilkjn openproject_web replicated 6/6 openproject/openproject:14
|
||||
7ovn0sbu8a7w openproject_worker replicated 1/1 openproject/openproject:14
|
||||
```
|
||||
|
||||
Docker swarm handles the networking necessary to distribute the load among the nodes.
|
||||
|
||||
@@ -12,7 +12,7 @@ This means OpenProject has to be used exactly as described in the [docker](../do
|
||||
Launching OpenProject works like launching any other container in [Synology](https://www.synology.com/en-global/knowledgebase/DSM/help/Docker/docker_container).
|
||||
|
||||
First you have to go to the **Registry** section and download the OpenProject image.
|
||||
It's best to choose the specific tag of the latest stable version (`openproject/community:11` at the time of writing).
|
||||
It's best to choose the specific tag of the latest stable version (`openproject/openproject:14` at the time of writing).
|
||||
You can use `:latest` too but it might lead to surprises when a major version upgrade happens.
|
||||
|
||||
Below are some settings you have to pay attention to when launching the container.
|
||||
|
||||
@@ -100,7 +100,7 @@ To run the migration script within the container, now simply run the following c
|
||||
docker run -it \
|
||||
-e MYSQL_DATABASE_URL="mysql://user:password@localhost:3306/dbname" \
|
||||
-e DATABASE_URL="postgresql://openproject:<PASSWORD>@localhost:5432/openproject" \
|
||||
openproject/community:latest
|
||||
openproject/openproject:latest
|
||||
```
|
||||
|
||||
|
||||
|
||||
@@ -202,7 +202,7 @@ Once the docker has stopped, you are ready to run the upgrade command. In this c
|
||||
docker run --rm -it \
|
||||
-v /var/lib/openproject/pgdata:/var/openproject/pgdata \
|
||||
-v /var/lib/openproject/pgdata-next:/var/openproject/pgdata-next \
|
||||
openproject/community:13 root ./docker/prod/postgres-db-upgrade
|
||||
openproject/openproject:14 root ./docker/prod/postgres-db-upgrade
|
||||
```
|
||||
|
||||
If everything goes well, the process should end with a message as follows:
|
||||
@@ -231,7 +231,7 @@ docker run -d -p 8080:80 --name openproject -e SECRET_KEY_BASE=secret \
|
||||
-v /var/lib/openproject/pgdata:/var/openproject/pgdata \
|
||||
-v /var/lib/openproject/assets:/var/openproject/assets \
|
||||
[...]
|
||||
openproject/community:13
|
||||
openproject/openproject:14
|
||||
|
||||
If your new installation looks fine, you can then choose to remove `/var/lib/openproject/pgdata-prev`:
|
||||
|
||||
@@ -275,8 +275,3 @@ Check `/var/lib/pgsql/13/data/pg_hba.conf` for any appearance of `scram-sha-256`
|
||||
Check `/var/lib/pgsql/13/data/postgresql.conf` for any appearance of `scram-sha-256` and replace with `md5` (search for `encryption`)
|
||||
|
||||
Reload Configuration of PostgreSQL server with `systemctl reload postgresql-13`
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -62,7 +62,7 @@ sudo mkdir -p /var/lib/openproject/{pgdata,assets}
|
||||
docker run -d -p 8080:80 --name openproject -e SECRET_KEY_BASE=secret \
|
||||
-v /var/lib/openproject/pgdata:/var/openproject/pgdata \
|
||||
-v /var/lib/openproject/assets:/var/openproject/assets \
|
||||
openproject/community:13
|
||||
openproject/openproject:14
|
||||
```
|
||||
|
||||
Then you would need to backup the `/var/lib/openproject` folder (for instance to S3 or FTP server).
|
||||
|
||||
@@ -167,7 +167,7 @@ mkdir -p /var/lib/openproject/{pgdata,assets}
|
||||
Next we need to initialize the database.
|
||||
|
||||
```shell
|
||||
docker run --rm -v /var/lib/openproject/pgdata:/var/openproject/pgdata -it openproject/community:13
|
||||
docker run --rm -v /var/lib/openproject/pgdata:/var/openproject/pgdata -it openproject/openproject:14
|
||||
```
|
||||
|
||||
As soon as you see `Database setup finished.` in the container's output you can kill it by pressing Ctrl + C.
|
||||
|
||||
@@ -108,7 +108,8 @@ docker-compose pull
|
||||
docker-compose up -d
|
||||
```
|
||||
|
||||
Please note that you can override the `TAG` that is used to pull the OpenProject image from the [Docker Hub](https://hub.docker.com/r/openproject/community/).
|
||||
Please note that you can override the `TAG` that is used to pull the OpenProject image from
|
||||
the [Docker Hub](https://hub.docker.com/r/openproject/openproject/).
|
||||
|
||||
### All-in-one container
|
||||
|
||||
@@ -117,8 +118,8 @@ When using the all-in-one docker container, you need to perform the following st
|
||||
1. First, pull the latest version of the image:
|
||||
|
||||
```shell
|
||||
docker pull openproject/community:VERSION
|
||||
# e.g. docker pull openproject/community:10
|
||||
docker pull openproject/openproject:VERSION
|
||||
# e.g. docker pull openproject/openproject:14
|
||||
```
|
||||
|
||||
Then stop and remove your existing container (we assume that you are running with the recommended production setup here):
|
||||
@@ -132,7 +133,7 @@ Finally, re-launch the container in the same way you launched it previously.
|
||||
This time, it will use the new image:
|
||||
|
||||
```shell
|
||||
docker run -d ... openproject/community:VERSION
|
||||
docker run -d ... openproject/openproject:VERSION
|
||||
```
|
||||
|
||||
#### I have already started OpenProject without mounted volumes. How do I save my data during an update?
|
||||
|
||||
@@ -17,7 +17,7 @@ if [[ -z "$1" ]] || [[ -z "$2" ]]; then
|
||||
exit 1
|
||||
fi
|
||||
|
||||
CURRENT_OP_MAJOR_VERSION="12"
|
||||
CURRENT_OP_MAJOR_VERSION="14"
|
||||
|
||||
SECONDS=0
|
||||
|
||||
@@ -69,7 +69,7 @@ if [[ ! "$SKIP_STEP_1" = "true" ]]; then
|
||||
echo
|
||||
echo "1.2) Starting OpenProject 7"
|
||||
if [[ ! `docker ps | grep $OP7_CONTAINER` ]]; then
|
||||
docker run -d --name $OP7_CONTAINER openproject/community:7 # can use `run -it` directly because the image doesn't support it yet in version 8
|
||||
docker run -d --name $OP7_CONTAINER openproject/openproject:7 # can use `run -it` directly because the image doesn't support it yet in version 8
|
||||
if [[ $? -gt 0 ]]; then exit 1; fi
|
||||
echo " OpenProject started"
|
||||
else
|
||||
@@ -79,7 +79,7 @@ if [[ ! "$SKIP_STEP_1" = "true" ]]; then
|
||||
echo
|
||||
echo "1.3) Starting OpenProject 8"
|
||||
if [[ ! `docker ps | grep $OP8_CONTAINER` ]]; then
|
||||
docker run -d --name $OP8_CONTAINER openproject/community:8-mysql # can use `run -it` directly because the image doesn't support it yet in version 8
|
||||
docker run -d --name $OP8_CONTAINER openproject/openproject:8-mysql # can use `run -it` directly because the image doesn't support it yet in version 8
|
||||
if [[ $? -gt 0 ]]; then exit 1; fi
|
||||
echo " OpenProject started"
|
||||
else
|
||||
@@ -230,7 +230,7 @@ docker run \
|
||||
-e MYSQL_DATABASE_URL="mysql2://$MYSQL_USER:$MYSQL_PWD@$DOCKER_HOST_IP:$MYSQL_PORT/$DATABASE" \
|
||||
-e DATABASE_URL="postgresql://postgres:postgres@$DOCKER_HOST_IP:$POSTGRES_PORT/$DATABASE" \
|
||||
-e FORCE_YES=true \
|
||||
-t openproject/community:b007c71494a76924396ad0b168ba733471e3e326 \
|
||||
-t openproject/openproject:b007c71494a76924396ad0b168ba733471e3e326 \
|
||||
> migration.log &
|
||||
|
||||
# wait for migration to finish...
|
||||
@@ -290,14 +290,14 @@ fi
|
||||
echo
|
||||
echo "2.8) Migrating from 10 to current ($CURRENT_OP_MAJOR_VERSION)"
|
||||
|
||||
docker pull openproject/community:$CURRENT_OP_MAJOR_VERSION
|
||||
docker pull openproject/openproject:$CURRENT_OP_MAJOR_VERSION
|
||||
|
||||
docker run \
|
||||
--rm \
|
||||
-v $PWD:/data \
|
||||
--name migrate10tocurrent \
|
||||
-e DATABASE_URL="postgresql://postgres:postgres@$DOCKER_HOST_IP:$POSTGRES_PORT/$DATABASE" \
|
||||
-it openproject/community:$CURRENT_OP_MAJOR_VERSION \
|
||||
-it openproject/openproject:$CURRENT_OP_MAJOR_VERSION \
|
||||
bundle exec rake db:migrate > migration.log
|
||||
|
||||
MIGRATION_STATUS=$?
|
||||
@@ -332,7 +332,7 @@ docker run \
|
||||
--rm \
|
||||
-e PGPASSWORD=postgres \
|
||||
-v /tmp:/data \
|
||||
-it openproject/community:$CURRENT_OP_MAJOR_VERSION pg_dump \
|
||||
-it openproject/openproject:$CURRENT_OP_MAJOR_VERSION pg_dump \
|
||||
-h $DOCKER_HOST_IP \
|
||||
-p $POSTGRES_PORT \
|
||||
-U postgres \
|
||||
|
||||
Reference in New Issue
Block a user