mysql: unknown option '--"' エラー
概要
KubernetesでMysqlコンテナ(mysql:5.6) を動かそうと思ったら、
コンテナがunknown option '--"'で止まってしまいました。
原因
原因はMysqlの環境変数に設定しているsecretの作成時、 echo に -n オプションをつけていなかったからでした。
解決策
base64にエンコードするとき以下のようにechoに-nをつければ解決するはずです。
$ echo -n password | base64 cGFzc3dvcmQ=
参考
エラーが起きた時のスクリーンショット
mysqlコンテナの作成に使用したymlファイル(wordpress向け)
#secret.yml apiVersion: v1 kind: Secret metadata: name: wp-auth data: WORDPRESS_DB_HOST: d29yZHByZXNzLW15c3Fs #wordpress-mysql WORDPRESS_DB_PASSWORD: cGFzc3dvcmQ= #password MYSQL_ROOT_PASSWORD: cGFzc3dvcmQ= #password
#mysql.yml apiVersion: v1 kind: Service metadata: name: wordpress-mysql labels: app: wordpress spec: ports: - port: 3306 selector: app: wordpress tier: mysql clusterIP: None --- apiVersion: v1 kind: PersistentVolume metadata: name: mysql-pv labels: app: wordpress spec: accessModes: - ReadWriteOnce capacity: storage: 10G hostPath: path: /home/uniuser/wordpress/mysql --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mysql-pv-claim labels: app: wordpress spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi --- apiVersion: apps/v1 kind: StatefulSet metadata: name: wordpress-mysql labels: app: wordpress spec: selector: matchLabels: app: wordpress tier: mysql serviceName: mysql replicas: 1 template: metadata: labels: app: wordpress tier: mysql spec: containers: - image: mysql:5.6 name: mysql envFrom: - secretRef: name: wp-auth ports: - containerPort: 3306 name: mysql volumeMounts: - name: mysql-persistent-storage mountPath: /var/lib/mysql volumes: - name: mysql-persistent-storage persistentVolumeClaim: claimName: mysql-pv-claim