Saya mencoba memasukkan file konfigurasi yang merupakan kumpulan rahasia ke dalam wadah Docker sebagai bagian dari Jenkinsfile yang saat ini menggunakan sintaks deklaratif.
File Jenkins:
pipeline {
agent {
dockerfile true
}
environment {
CONFIG = credentials('name-of-Jenkins-secret-file')
}
stages {
stage('Build') {
steps {
sh "echo ${CONFIG} > /usr/src/scripts/config/default.json"
}
}
}
}
file buruh pelabuhan:
FROM node:carbon
WORKDIR /usr/src/scripts
COPY package*.json ./
RUN npm install
COPY . .
ENTRYPOINT node ./run.js
Langkah-langkah yang diselesaikan saat membangun:
Record trace of a Docker image used in FROM <1s
docker build -t 47a61bffd47bc4f049a967a05f05889983734f32 -f "Dockerfile" "."— Shell Script 1s
Dockerfile— Read file from workspace <1s
Checks if running on a Unix-like node <1s
General SCM <1s
Shell Script
[repo_branch-4ZXYH5FGLRRVXQLNJJ2SCGKMMGIMGWH5VUJEHPFZ6CDVODQSHRHQ] Running shell script
Error response from daemon: Container 0daa4e0d56818544fd228607d7c6318963f80ad99c0f8781a425163c4fb4fc2f is not running
script returned exit code -2
STATUS: FAILED
Saya tidak yakin apakah saya mencoba mencapai ini dengan cara yang aneh atau tidak biasa. Sebagian besar materi yang saya temukan membahas pembuatan image buruh pelabuhan menggunakan pipeline bertujuan untuk menyimpannya ke repositori pribadi, yang menunjukkan bahwa saya mungkin melakukan sesuatu yang aneh. Kesalahan tersebut menunjukkan bahwa operasi tidak dapat dilakukan pada kontainer yang tidak berjalan.