以下のDockerfileで作成したイメージを作成しました。
FROM openjdk:8-jre-slim ENV LANG=C.UTF-8 \ EMBULK_VERSION=0.9.23 RUN apt-get update && apt-get install -y curl # Embulk install RUN curl -o /bin/embulk -L "https://dl.embulk.org/embulk-${EMBULK_VERSION}.jar" \ && chmod +x /bin/embulk # plugins RUN embulk gem install \ embulk-input-mysql \ embulk-output-mysql \ embulk-filter-expand_json \ embulk-output-bigquery WORKDIR /app COPY . ./ ENTRYPOINT ["java", "-jar", "/bin/embulk"]
これをkubernetesで実行しようとmanifestに以下の記載をしました。
apiVersion: apps/v1 kind: Deployment metadata: name: connect-test labels: app: connect-test spec: replicas: 1 selector: matchLabels: app: connect-test template: metadata: labels: app: connect-test spec: containers: - name: db-connect-test imagePullPolicy: Always image: XXXXXX.dkr.ecr.us-east-1.amazonaws.com/connect_test:latest args: ["run", "/app/local.yaml.liquid"] env: - name: SRC_DB_HOST valueFrom: secretKeyRef: name: secrets-db key: DB_READ_HOST ・・・・・(以下環境変数省略)・・・・・
こちらを実行すると
% kubectl logs pod/connect-test-9c6bfbff6-kg9vg -n connect-test standard_init_linux.go:228: exec user process caused: exec format error
上記のようにエラーになってしまいます。なおこれをdocker-compose.yamlで実行すると問題なく実行できます。
embulk: image: XXXX.dkr.ecr.us-east-1.amazonaws.com/connect_test:latest env_file: - .env_bigquery volumes: - .:/app working_dir: /app command: ["run", "/app/sample.yaml.liquid"] links: - mysql01 depends_on: - "mysql01"
起動した際に
java -jar /bin/embulk run /app/sample.yaml.liquid
を実行したいのですが上記何かしら間違っておりますでしょうか?なおargsのところをcommandにしても同じエラーでした。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。