Closed helmut-steiner closed 6 years ago
You connect to PostgreSQL via sudo -u postgres psql
via command line.
Downside: All system dbs are there... so this could potentially fuck up the whole system... XD
Hello Helmut,
sorry for my late reply but better late than never :-). I prefert to stay as stock as possible because the DSM, Docker and Synology WEB Api are in ongoing changes so there is much to do each major update.
Iam shure that Gitlab will change it's DB structure to stay compatible with MariaDB or there will be an official migration path to the PostgreSQL.
Since my Synology conatans the most valuebe data i owe, i will always try to avoid to fuck up the system XD.
Kind Regards
Hello Helmut,
you were completely right. The support has been dropped and there is at the moment no way to upgrade to GitLab 10.3.x or higher because of MariaDB 5/10 incompatibilities. I am already working on it an the pgsql package will come soon.
phpPgAdmin is no option because of its actuallity "Last update: 31/03/2014" i also will not use synologys postgres sql to avoid problems. i will use a postgres docker container.
I am ready so far, just working on a simple way to migrate the db dump. You can watch the status here. https://github.com/jboxberger/synology-gitlab-jboxberger
Kind Regards
Hello Juri, The idea to have the database in a separate container is great. Keeping everything neat and tidy on the OS side. I am looking forward to the new release. Thanks for the hard work you are putting into this! All the best, Helmut
Any status update on this one?
Yeah Helmut, i've released som alphas. Please feel free to test if you have the the posibility. You can track the status on the new project.
https://github.com/jboxberger/synology-gitlab-jboxberger/releases
Kind Regards
Unfortunately I only run a production system and am not able to test pre-releases. :(
I have problems with the MariaDB 2 PostgtteSQL migration - i haven't found a solid usable tool yet, so this may take a while :-(.
Did you have a look at the description here: https://gitlab.com/gitlab-org/gitlab-ce/blob/master/doc/update/mysql_to_postgresql.md ?
thanks for the link, i'll check it out later. I want a standalone migration script. But maybe i can do the trick by injecting the migration script into the gitlab contaner and executing it there so i don't need to have the migration tools on the synology. we will see. :-)
Kind Regards
Hey Juri, I tried the sameersbn/docker-mysql2psql approach last week but failed on reimporting the data (one of the create statements failed as there was no datatype). Do you have any new insights? Otherwise I guess the pgloader approach is the way to go... Or maybe a newer mysql2psql version for docker as the one sameersbn offers is over a year old and not maintained any more. So the conversion might be compromised.
Do you think it's possible to install the new gitlab and postgresql packages, fire them up to create the database and then use a script to install pgloader in the docker container, execute it to fill the database as described in the article I linked above and then deinstall pgloader again? The variables for the database migration can be given as parameters to the script as they are known.
What do you think of this?
Kind regards & herzliche Grüße aus Wien PS: Wenn ich dich irgendwie unterstützen kann, lass es mich wissen!
Danke für dein Rückmeldung und schöne Grüße zurück!!! Ich bin auch mit dem mysql2postgres bisher gescheitert. Ich habe auch alles mögliche inkl. separate Container ausprobiert und mit files und mysql export mit --compatible=postgresql ausprobiert. Nichts hat gefruchtet.
Ich bin auch deiner Überlegung gefolgt und wollte das psql Gitlab paket installieren und hier die migrierte Dantenbak unterscheiben.
Ich möchte zunächts einfach nur irgendwie migrieren und würde mir dann Gedankten zur Automtisierung machen. Ein Idee war auch ein Step by Step viedo auf yotube, schließlich ist jemand der GitLab nutzt nicht gänzlich technisch unbewandert.
Du hilfts ungemein!!! Von dir habe ich z.B soeben erfahren das es den pgloader gibt und dauf docker HUB gibt es auch einen aktuellen container: https://hub.docker.com/r/dimitri/pgloader/ da werde ich demnächst mal mit rumexperementieren.
Wenn du einen Weg findest die DB zu migrieren dann lass es mich wissen, das ist das letzte puzzle was mir fehlt um das alte paket zu "droppen" / "deprecaten" und mit dem psql weiter zu machen.
Gruss Juri
Got it working.... whoop whopp!
Hier ist schon mal das transkript ... falls du testen willst kannst du ja erst mal in ein anderes schema migrireren und im synology_gitlab_db container "DB_NAME" auf das migrierete SCHEMA ändern.
;================================================================= ; INIT pgloader CONTAINER ;================================================================= pull dimitri/pgloader
create dummy file: /volume1/docker/mysqld/mysqld.sock
start pgloader container with settings volume: /volume1/docker/mysqld/mysqld.sock /var/run/mysqld/mysqld.sock link: synology_gitlab_db postgresql
; stop pgloader container and replace dummy with real mysql.sock socket sudo rm /volume1/docker/mysqld/mysqld.sock sudo ln -s /var/run/mysqld/mysqld10.sock /volume1/docker/mysqld/mysqld.sock ; start pgloader container
;================================================================= ; POSGRES ADD MIGRATION SUPERUSER ;================================================================= sudo docker exec -it synology_gitlab_db bash su postgres psql CREATE USER gitlab_migration WITH PASSWORD '99TdYCpt5AkP'; ALTER ROLE gitlab_migration WITH Superuser; \du exit
;================================================================= ; MIGRATION ;================================================================= sudo docker exec -it dimitri-pgloader bash
apt-get update apt-get install nano nano pgloader.conf .................................................................. LOAD DATABASE FROM mysql://root:[password]@unix:/var/run/mysqld/mysqld.sock:3307/gitlab INTO postgres://gitlab_migration:99TdYCpt5AkP@postgresql:5432/gitlab WITH include no drop, truncate, disable triggers, create no tables, create no indexes, preserve index names, no foreign keys, data only ALTER SCHEMA 'gitlab' RENAME TO 'public' ; .................................................................. pgloader pgloader.conf exit
;================================================================= ; CLEANUP ;================================================================= sudo docker exec -it synology_gitlab_db bash DROP USER gitlab_migration; exit
So here we go MDB10 to PostgreSQL https://github.com/jboxberger/synology-gitlab-jboxberger/blob/master/src/scripts/migrate-m10
If you could give it a try this will be great, but beware... backup, backup, backup first.
Hey Juri, That was quick. 👍 The installation of your 10.5.1 package was successful but the startup of the postgresql database fails so I cannot migrate...
Log: Creating database user: gitlab psql: FATAL: database "postgres" does not exist
Any thoughts?
Okay, solved the issue by deleting the container and recreating it... now the database was created successfully...
EDIT: I deleted the gitlab-db folder contents as well, obviously. Just in case anybody else runs into the same issue.
Unfortunately pgloader runs into a fatal error when executing the script. I ran the gitlab (10.5.1) docker container to initialize the db first. Do you think it might need an older gitlab image first to migrate the db? With which version did you test it? Here is the terminal output of the migration script:
create /volume1/docker/mysqld/mysqld-migration.sock link
pulling dimitri/pgloader:latest image
latest: Pulling from dimitri/pgloader
c73ab1c6897b: Pull complete
1331c9ff0862: Pull complete
ff5c0b4639eb: Pull complete
750db8f5383c: Pull complete
154a17784444: Pull complete
16825fc1268c: Pull complete
Digest: sha256:b5655a93c3eeedc02dc89eda69bc7b8fb0658c4e34c85237be5d1688cb23b7ab
Status: Downloaded newer image for dimitri/pgloader:latest
creating dimitri-pgloader container
[Line 259] Exec WebAPI: api=SYNO.Docker.Container, version=1, method=create, param={"is_run_instantly":true,"profile":{"cap_add":null,"cap_drop":null,"cmd":"bash","cpu_priority":50,"devices":null,"enable_publish_all_ports":false,"enable_restart_policy":false,"enabled":false,"env_variables":[{"key":"PATH","value":"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"}],"exporting":false,"id":"fb6ab9e5e8b8714c7089ebb724a80d3097014f99d229f14ac78ab7b1cf8b6f52","image":"dimitri/pgloader:latest","is_ddsm":false,"is_package":false,"links":[{"alias":"postgresql","link_container":"synology_gitlab_db"}],"memory_limit":0,"name":"dimitri-pgloader","network":[{"driver":"bridge","name":"bridge"}],"network_mode":"bridge","port_bindings":[],"privileged":false,"shortcut":{"enable_shortcut":false},"ulimits":null,"use_host_network":false,"volume_bindings":[{"host_volume_file":"/docker/mysqld/mysqld-migration.sock","mount_point":"/var/run/mysqld/mysqld.sock","type":"rw"}],"volumes_from":null}}, runner=
{
"data" : {
"start_dependent_container" : false
},
"httpd_restart" : false,
"success" : true
}
CREATE gitlab_migration Superuser
NOTICE: role "gitlab_migration" does not exist, skipping
ALTER ROLE
2018-03-19T11:14:49.444000Z LOG Migrating from #<MYSQL-CONNECTION mysql://root@unix:/var/run/mysqld/mysqld.sock:3307/gitlab {1006871183}>
2018-03-19T11:14:49.461000Z LOG Migrating into #<PGSQL-CONNECTION pgsql://gitlab_migration@postgresql:5432/gitlab {1006872B53}>
2018-03-19T11:16:04.631000Z WARNING Source column "public"."abuse_reports"."id" is casted to type "bigserial" which is not the same as "integer", the type of current target database column "public"."abuse_reports"."id".
2018-03-19T11:16:04.632000Z WARNING Source column "public"."abuse_reports"."reporter_id" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."abuse_reports"."reporter_id".
2018-03-19T11:16:04.633000Z WARNING Source column "public"."abuse_reports"."user_id" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."abuse_reports"."user_id".
2018-03-19T11:16:04.633000Z WARNING Source column "public"."abuse_reports"."created_at" is casted to type "timestamptz" which is not the same as "timestamp without time zone", the type of current target database column "public"."abuse_reports"."created_at".
2018-03-19T11:16:04.634000Z WARNING Source column "public"."abuse_reports"."updated_at" is casted to type "timestamptz" which is not the same as "timestamp without time zone", the type of current target database column "public"."abuse_reports"."updated_at".
2018-03-19T11:16:04.635000Z WARNING Source column "public"."abuse_reports"."cached_markdown_version" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."abuse_reports"."cached_markdown_version".
2018-03-19T11:16:04.636000Z WARNING Source column "public"."appearances"."id" is casted to type "bigserial" which is not the same as "integer", the type of current target database column "public"."appearances"."id".
2018-03-19T11:16:04.637000Z WARNING Source column "public"."appearances"."cached_markdown_version" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."appearances"."cached_markdown_version".
2018-03-19T11:16:04.637000Z WARNING Source column "public"."application_settings"."id" is casted to type "bigserial" which is not the same as "integer", the type of current target database column "public"."application_settings"."id".
2018-03-19T11:16:04.638000Z WARNING Source column "public"."application_settings"."default_projects_limit" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."default_projects_limit".
2018-03-19T11:16:04.639000Z WARNING Source column "public"."application_settings"."created_at" is casted to type "timestamptz" which is not the same as "timestamp without time zone", the type of current target database column "public"."application_settings"."created_at".
2018-03-19T11:16:04.640000Z WARNING Source column "public"."application_settings"."updated_at" is casted to type "timestamptz" which is not the same as "timestamp without time zone", the type of current target database column "public"."application_settings"."updated_at".
2018-03-19T11:16:04.641000Z WARNING Source column "public"."application_settings"."default_branch_protection" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."default_branch_protection".
2018-03-19T11:16:04.642000Z WARNING Source column "public"."application_settings"."max_attachment_size" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."max_attachment_size".
2018-03-19T11:16:04.643000Z WARNING Source column "public"."application_settings"."default_project_visibility" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."default_project_visibility".
2018-03-19T11:16:04.643000Z WARNING Source column "public"."application_settings"."default_snippet_visibility" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."default_snippet_visibility".
2018-03-19T11:16:04.644000Z WARNING Source column "public"."application_settings"."session_expire_delay" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."session_expire_delay".
2018-03-19T11:16:04.645000Z WARNING Source column "public"."application_settings"."max_artifacts_size" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."max_artifacts_size".
2018-03-19T11:16:04.646000Z WARNING Source column "public"."application_settings"."two_factor_grace_period" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."two_factor_grace_period".
2018-03-19T11:16:04.646000Z WARNING Source column "public"."application_settings"."metrics_pool_size" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."metrics_pool_size".
2018-03-19T11:16:04.647000Z WARNING Source column "public"."application_settings"."metrics_timeout" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."metrics_timeout".
2018-03-19T11:16:04.648000Z WARNING Source column "public"."application_settings"."metrics_method_call_threshold" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."metrics_method_call_threshold".
2018-03-19T11:16:04.649000Z WARNING Source column "public"."application_settings"."metrics_port" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."metrics_port".
2018-03-19T11:16:04.650000Z WARNING Source column "public"."application_settings"."metrics_sample_interval" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."metrics_sample_interval".
2018-03-19T11:16:04.650000Z WARNING Source column "public"."application_settings"."default_group_visibility" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."default_group_visibility".
2018-03-19T11:16:04.651000Z WARNING Source column "public"."application_settings"."metrics_packet_size" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."metrics_packet_size".
2018-03-19T11:16:04.652000Z WARNING Source column "public"."application_settings"."container_registry_token_expire_delay" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."container_registry_token_expire_delay".
2018-03-19T11:16:04.658000Z WARNING Source column "public"."application_settings"."housekeeping_incremental_repack_period" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."housekeeping_incremental_repack_period".
2018-03-19T11:16:04.658000Z WARNING Source column "public"."application_settings"."housekeeping_full_repack_period" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."housekeeping_full_repack_period".
2018-03-19T11:16:04.659000Z WARNING Source column "public"."application_settings"."housekeeping_gc_period" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."housekeeping_gc_period".
2018-03-19T11:16:04.662000Z WARNING Source column "public"."application_settings"."max_pages_size" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."max_pages_size".
2018-03-19T11:16:04.663000Z WARNING Source column "public"."application_settings"."terminal_max_session_time" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."terminal_max_session_time".
2018-03-19T11:16:04.664000Z WARNING Source column "public"."application_settings"."unique_ips_limit_per_user" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."unique_ips_limit_per_user".
2018-03-19T11:16:04.665000Z WARNING Source column "public"."application_settings"."unique_ips_limit_time_window" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."unique_ips_limit_time_window".
2018-03-19T11:16:04.669000Z WARNING Source column "public"."application_settings"."cached_markdown_version" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."cached_markdown_version".
2018-03-19T11:16:04.674000Z WARNING Source column "public"."application_settings"."performance_bar_allowed_group_id" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."performance_bar_allowed_group_id".
2018-03-19T11:16:04.675000Z WARNING Source column "public"."application_settings"."rsa_key_restriction" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."rsa_key_restriction".
2018-03-19T11:16:04.676000Z WARNING Source column "public"."application_settings"."dsa_key_restriction" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."dsa_key_restriction".
2018-03-19T11:16:04.677000Z WARNING Source column "public"."application_settings"."ecdsa_key_restriction" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."ecdsa_key_restriction".
2018-03-19T11:16:04.678000Z WARNING Source column "public"."application_settings"."ed25519_key_restriction" is casted to type "bigint" which is not the same as "integer", the type of current target database column "public"."application_settings"."ed25519_key_restriction".
KABOOM!
FATAL error: pgloader failed to find column "public"."application_settings"."password_authentication_enabled" in target table "\"public\".\"application_settings\""
An unhandled error condition has been signalled:
pgloader failed to find column "public"."application_settings"."password_authentication_enabled" in target table "\"public\".\"application_settings\""
What I am doing here?
pgloader failed to find column "public"."application_settings"."password_authentication_enabled" in target table "\"public\".\"application_settings\""
DELETE gitlab_migration user
DROP ROLE
DELETE pgloader docker container and image
[Line 237] Not a json value: dimitri-pgloader
[Line 259] Exec WebAPI: api=SYNO.Docker.Container, version=1, method=delete, param={"force":true,"name":"dimitri-pgloader","preserve_profile":false}, runner=
{
"data" : {},
"httpd_restart" : false,
"success" : true
}
Untagged: dimitri/pgloader:latest
Untagged: dimitri/pgloader@sha256:b5655a93c3eeedc02dc89eda69bc7b8fb0658c4e34c85237be5d1688cb23b7ab
Deleted: sha256:7842eb832d7570016b9514fc9de2fd923222bdc693e177e6158e6d0387b14c6c
Deleted: sha256:21a4240770529205492c0540e7b6d2f1341be74abbe00c656402209c75e31ca3
Deleted: sha256:0200fcf276cd1e7266d87641222b644e4f47404a0860df8108a22a4689ccc233
Deleted: sha256:fed932942561ecbaedd0f28d305e009ce498a2bffd15f17dfba0ebfe8bb8f934
Deleted: sha256:03df92347d10d19dac10b40848790d9da791e81e64f7748cbfcfd3f1160e6eab
Deleted: sha256:b0b84519eea164e2bb59f405c4dcc8616313e0d89dc1a5f5222d0f81ea6a5d79
Deleted: sha256:e1df5dc88d2cc2cd9a1b1680ec3cb92a2dc924a0205125d85da0c61083b4e87d
DELETE /volume1/docker/mysqld/mysqld-migration.sock
Here is the terminal output when not running the Gitlab container first to initialize the database:
create /volume1/docker/mysqld/mysqld-migration.sock link
pulling dimitri/pgloader:latest image
latest: Pulling from dimitri/pgloader
c73ab1c6897b: Pull complete
1331c9ff0862: Pull complete
ff5c0b4639eb: Pull complete
750db8f5383c: Pull complete
154a17784444: Pull complete
16825fc1268c: Pull complete
Digest: sha256:b5655a93c3eeedc02dc89eda69bc7b8fb0658c4e34c85237be5d1688cb23b7ab
Status: Downloaded newer image for dimitri/pgloader:latest
creating dimitri-pgloader container
[Line 259] Exec WebAPI: api=SYNO.Docker.Container, version=1, method=create, param={"is_run_instantly":true,"profile":{"cap_add":null,"cap_drop":null,"cmd":"bash","cpu_priority":50,"devices":null,"enable_publish_all_ports":false,"enable_restart_policy":false,"enabled":false,"env_variables":[{"key":"PATH","value":"/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"}],"exporting":false,"id":"fb6ab9e5e8b8714c7089ebb724a80d3097014f99d229f14ac78ab7b1cf8b6f52","image":"dimitri/pgloader:latest","is_ddsm":false,"is_package":false,"links":[{"alias":"postgresql","link_container":"synology_gitlab_db"}],"memory_limit":0,"name":"dimitri-pgloader","network":[{"driver":"bridge","name":"bridge"}],"network_mode":"bridge","port_bindings":[],"privileged":false,"shortcut":{"enable_shortcut":false},"ulimits":null,"use_host_network":false,"volume_bindings":[{"host_volume_file":"/docker/mysqld/mysqld-migration.sock","mount_point":"/var/run/mysqld/mysqld.sock","type":"rw"}],"volumes_from":null}}, runner=
{
"data" : {
"start_dependent_container" : false
},
"httpd_restart" : false,
"success" : true
}
CREATE gitlab_migration Superuser
NOTICE: role "gitlab_migration" does not exist, skipping
ALTER ROLE
2018-03-19T10:02:01.327000Z LOG Migrating from #<MYSQL-CONNECTION mysql://root@unix:/var/run/mysqld/mysqld.sock:3307/gitlab {1006879183}>
2018-03-19T10:02:01.537000Z LOG Migrating into #<PGSQL-CONNECTION pgsql://gitlab_migration@postgresql:5432/gitlab {100687AB53}>
KABOOM!
FATAL error: pgloader failed to find anything in schema "public" in target catalog.
An unhandled error condition has been signalled:
pgloader failed to find anything in schema "public" in target catalog.
What I am doing here?
pgloader failed to find anything in schema "public" in target catalog.
DELETE gitlab_migration user
DROP ROLE
DELETE pgloader docker container and image
[Line 237] Not a json value: dimitri-pgloader
[Line 259] Exec WebAPI: api=SYNO.Docker.Container, version=1, method=delete, param={"force":true,"name":"dimitri-pgloader","preserve_profile":false}, runner=
{
"data" : {},
"httpd_restart" : false,
"success" : true
}
Untagged: dimitri/pgloader:latest
Untagged: dimitri/pgloader@sha256:b5655a93c3eeedc02dc89eda69bc7b8fb0658c4e34c85237be5d1688cb23b7ab
Deleted: sha256:7842eb832d7570016b9514fc9de2fd923222bdc693e177e6158e6d0387b14c6c
Deleted: sha256:21a4240770529205492c0540e7b6d2f1341be74abbe00c656402209c75e31ca3
Deleted: sha256:0200fcf276cd1e7266d87641222b644e4f47404a0860df8108a22a4689ccc233
Deleted: sha256:fed932942561ecbaedd0f28d305e009ce498a2bffd15f17dfba0ebfe8bb8f934
Deleted: sha256:03df92347d10d19dac10b40848790d9da791e81e64f7748cbfcfd3f1160e6eab
Deleted: sha256:b0b84519eea164e2bb59f405c4dcc8616313e0d89dc1a5f5222d0f81ea6a5d79
Deleted: sha256:e1df5dc88d2cc2cd9a1b1680ec3cb92a2dc924a0205125d85da0c61083b4e87d
DELETE /volume1/docker/mysqld/mysqld-migration.sock
Okay, further input from my part. It seems there has been a change in the columns for the application_settings table. There are now two columns: password_authentication_enabled_for_web password_authentication_enabled_for_git
I guess we have to map "public"."application_settings"."password_authentication_enabled" to one of those or I have to upgrade gitlab 10.2.5 package to an older than 10.5.1 version and then migrate...
I am stupid... :)
We will run into way more errors like this when migrating accross versions. I will try to install an 10.2.5 sameersbn package with the same settings migrate the db and then upgrade to 10.5.1.
Oh sorry it was sooooo absolutely self-explanatory to me that you can only migrate within the same version (MariaDB 10.2.5 to PostgreSQL 10.2.5) that i forgot to mention that. I think it was also a little too late yesterday :-).
Tonight i will upload all PostgreSQL versions from 10.0.0 so you can choose the one you need!
Hahaha, yeah, actually it is self-explanatory. I guess I was just too tired this morning... No worries on rushing with the releases. I can manage to install a docker container with earlier versions... ;-) But people will be pleased to get an all in one package. Thank you very much!
Maybe I have to wait for your packet anyways: I can't get sameersbn/gitlab:10.2.5 downloaded from Docker Hub. It stops at 709 MB. Tried three times now and it always fails at the same MB count.
Yeah i will do this tonight, no problem. I have all of them on my HDD :-). I will let you know when they're online.
Ok, the new versions are online. Also the required 10.1.4 and 10.2.5. The README is also updated. I also implemented a DB schema version check during mirgation to avoid mismatching migration attempts.
I successfully migrated my PROD from GitLab 10.2.5 (MDB10) to GitLab 10.2.5 (PostgreSQL) and then from 10.2.5 to 10.5.5!
If you have a clean system - no dangeling haf deleted containers and images in docker - the upgrade should work fine. If you get any erros, let me know, there is nothing what can't be solved :-).
Kind Regards!
Migration successful. Vielen herzlichen Dank für deine Arbeit Juri!
GREAT!!! 👍
Hey Juri, GitLab 9.3 was released today and way down in the changelog they state that from 9.3 onward they drop support for subgroups on MySQL database. As far as I know MariaDB which is used by the synology docker image is a fork of MySQL so we will lose the subgroups feature and possible future features.
Therefore I suggest to switch to PostgreSQL. It should be installed with DSM but we need additional steps to move the database from the original location.
There exists a phpPgAdmin package on https://www.cphub.net/?id=40&pid=289 to configure the db. Converting of the db to PostgreSQL with one of those tools: https://wiki.postgresql.org/wiki/Converting_from_other_Databases_to_PostgreSQL#MySQL What do you think?
Best regards, Helmut