gosu missing in mysql image
isavcic opened this issue · 4 comments
$ kubectl -n kubeflow logs pod/mysql-6995764585-tntqj
2020-02-19 13:57:28+00:00 [Note] [Entrypoint]: Entrypoint script for MySQL Server 5.6.47-1debian9 started.
2020-02-19 13:57:28+00:00 [Note] [Entrypoint]: Switching to dedicated user 'mysql'
/usr/local/bin/docker-entrypoint.sh: line 354: exec: gosu: not found
Is there a reason this custom su
is used?
Also, the entrypoint should have the executable bit set:
diff --git a/pipelines/base/manifest/mysql.yaml b/pipelines/base/manifest/mysql.yaml
index 3616a28..fb6c574 100644
--- a/pipelines/base/manifest/mysql.yaml
+++ b/pipelines/base/manifest/mysql.yaml
@@ -53,6 +53,7 @@ spec:
items:
- key: docker-entrypoint.sh
path: docker-entrypoint.sh
+ mode: 0777
- name: mysql-persistent-storage
persistentVolumeClaim:
claimName: $(mysqlPvcName)
Thanks for spotting this bug.
The only reason I need a custom docker entry point is I wanted to created 2 databases for metadata and pipelines. So I copied the original 5.6 script and edited it to accept multiple databases (cuz init container + script is more troublesome to setup). But seems like I copied a wrong version.
There is another bug, I also forgot to add the selector for the MySQL service.
We will be making a PR to fix these few problems in the next 2 days after we test more comprehensively on our cluster.
But I believe this is the only 4 bugs so far.
- docker entry point
- execution flag
- mount path (I overwrite the other files in the folder, I shld mount to a specific file only)
- MySQL service has no selector (so it will points to a random pod in the namespace).
Sorry for the trouble. Will fix it soon and release a version tag once we tested it more.
Hey this is fixed in the latest commits. We have tested on our cluster. If everything is ok, do give be a thumbs up so I can close this issue.