У меня проблема с запуском скриптовой оболочки внутри docker не работает. У меня есть Shell Js хранилище коллекций, как показано ниже:
#!/bin/bash
DIRECTORY="home"
CONTAINER="mongodb"
DB_NAME="pos-rabbit"
BACKUP_PATH="backup"
BACKUP_NAME="Pos-Rabbit_$(date +%Y-%m-%d)"
# Backup
docker exec $CONTAINER mongodump --db $DB_NAME --out /$BACKUP_PATH/$BACKUP_NAME
И затем у меня есть метод get script to запустить, но это ошибка docker: не найдено \ n ' какое предложение с docker контейнером
export const execBySelector = new ValidatedMethod({
name: 'app.shellJs.execBySelector',
mixins: [CallPromiseMixin],
validate: new SimpleSchema({
selector: {
type: Object,
blackbox: true,
},
}).validator(),
run({ selector }) {
if (Meteor.isServer) {
try {
let result = 'Shell executed'
let getShell = ShellJs.findOne(selector)
console.log(getShell && getShell.command)
console.log('----- Shell Command -----')
if (getShell) {
const child = shell.exec(getShell.command, { silent: true })
console.log(child)
if (child.code == 0) {
result = child.stdout
} else {
throw child
}
} else {
throw 'Shell do not exist'
}
return result
} catch (err) {
throwError('Shell Exec By Selector', err)
}
}
},
})
Показать ошибку
{ [String: '']
stdout: '',
stderr: '/bin/sh: 11: docker: not found\n/bin/sh: 12: docker: not found\ntar: Pos-Rabbit_2020-02-19: Cannot stat: No such file or directory\ntar: Exiting with failure status due to previous errors\n/bin/sh: 20: gdrive: not found\n/bin/sh: 25: docker: not