Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

241
Views
mysql: opción desconocida '--"' en Kubernetes

Estoy tratando de ejecutar mysql 5.7 en kubernetes y obtuve este error mysql: unknown option '--"'

Mi base de datos.yaml se ve así

 apiVersion: v1 kind: Pod metadata: name: app-db labels: app: app-db spec: containers: - name: mysql image: mysql:5.7 ports: - name: mysql-port containerPort: 3306 env: - name: MYSQL_ROOT_PASSWORD valueFrom: secretKeyRef: name: app-secrets key: rootPassword - name: MYSQL_USER valueFrom: secretKeyRef: name: app-secrets key: username - name: MYSQL_ROOT_PASSWORD valueFrom: secretKeyRef: name: app-secrets key: password - name: MYSQL_DATABASE valueFrom: secretKeyRef: name: app-secrets key: defaultDatabase

¿Quizás me perdí algo?

Traté de cambiar de versión, traté de usar muestras del sitio oficial de Kubernetes, nada funciona para mí.

Los últimos registros con error:

 2020-07-19 20:51:01 100 [Note] Event Scheduler: Loaded 0 events 2020-07-19 20:51:01 100 [Note] mysqld: ready for connections. Version: '5.6.49' socket: '/var/run/mysqld/mysqld.sock' port: 0 MySQL Community Server (GPL) 2020-07-19 20:51:01+00:00 [Note] [Entrypoint]: Temporary server started. Warning: Unable to load '/usr/share/zoneinfo/iso3166.tab' as time zone. Skipping it. Warning: Unable to load '/usr/share/zoneinfo/leap-seconds.list' as time zone. Skipping it. Warning: Unable to load '/usr/share/zoneinfo/zone.tab' as time zone. Skipping it. Warning: Unable to load '/usr/share/zoneinfo/zone1970.tab' as time zone. Skipping it. 2020-07-19 20:51:04 100 [Warning] 'proxies_priv' entry '@ root@app-db' ignored in --skip-name-resolve mode. 2020-07-19 20:51:04+00:00 [Note] [Entrypoint]: Creating database app_db mysql: unknown option '--"'
over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Me encontré con el mismo problema y después de mucha depuración frustrante, finalmente lo resolví.

El problema fue que creé mis secretos con el echo 'secret' | base64 El comando echo 'secret' | base64 y el comando echo insertan automáticamente una nueva línea final.

Utilice echo -n 'secret' | base64 en su lugar. ✔️

Desafortunadamente, esto no era en absoluto lo que esperaba y, por lo tanto, no noté que había un salto de línea en la salida del registro. Con suerte, esto puede ayudar a algunas personas que también usan el comando echo para codificar en base64.

over 4 years ago · Santiago Trujillo Report

0

Miré el script entrypont.sh para este contenedor 👀. Y el error está ocurriendo aquí en la sección 'Creando base de datos':

 # Creates a custom database and user if specified if [ -n "$MYSQL_DATABASE" ]; then mysql_note "Creating database ${MYSQL_DATABASE}" 👈 docker_process_sql --database=mysql <<<"CREATE DATABASE IF NOT EXISTS \`$MYSQL_DATABASE\` ;" 👈 fi if [ -n "$MYSQL_USER" ] && [ -n "$MYSQL_PASSWORD" ]; then mysql_note "Creating user ${MYSQL_USER}" ...
 docker_process_sql() { passfileArgs=() if [ '--dont-use-mysql-root-password' = "$1" ]; then passfileArgs+=( "$1" ) shift fi # args sent in can override this db, since they will be later in the command if [ -n "$MYSQL_DATABASE" ]; then set -- --database="$MYSQL_DATABASE" "$@" fi mysql --defaults-extra-file=<( _mysql_passfile "${passfileArgs[@]}") --protocol=socket -uroot -hlocalhost --socket="${SOCKET}" "$@" }

También probé con la ventana acoplable simple y funciona bien con esto:

 docker run --name some-mysql -d -e MYSQL_ROOT_PASSWORD=my-secret-pw -e MYSQL_DATABASE="app" -e MYSQL_USER="user1" mysql:5.7

Así que lo más probable es que haya algo corrupto en tus secretos 💀.

✌️

over 4 years ago · Santiago Trujillo Report

0

La configuración de YAML es bastante simple. Supongo que el problema podría estar en los secretos de la aplicación.

Deshabilite todos los envs y luego agregue uno por uno, lo que podría ayudarlo a encontrar la configuración del problema.

En caso de que sus secretos no sean correctos, puede configurar env directamente, como:

 env: - name: MYSQL_ROOT_PASSWORD value: somePassYouLike

Porque muchos agregan secretos de Kubernetes copiando archivos base64 generados manualmente. Asegúrese de que no haya espacios después de que se haya copiado la cadena base64. Vaya al panel de control de Kubernetes para verificar la longitud de los secretos.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!