Rename openproject/community to openproject/openproject

This commit is contained in:
Oliver Günther
2024-04-16 11:29:40 +02:00
parent f2ee353e2c
commit 7a9a43fd93
13 changed files with 42 additions and 46 deletions
+1 -1
View File
@@ -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?
+7 -7
View File
@@ -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 \