微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法执行二进制文件Docker Pterodactyl

如何解决无法执行二进制文件Docker Pterodactyl

我正在尝试将机器人添加到Docker容器(翼手龙面板)。获取无法执行二进制文件错误。我发现其他人也提出了类似的问题,但不是关于翼手龙,它有很多自定义文件规则,例如Dockerfile中的规则。任何方向将不胜感激。

Dockerfile

$ cat Dockerfile
FROM node:10-alpine

LABEL author="Michael Parker" maintainer="parker@pterodactyl.io"

copY . /srv/daemon

workdir /srv/daemon

RUN apk add --no-cache openssl make gcc g++ python linux-headers paxctl gnupg tar zip unzip curl coreutils zlib supervisor jq \
 && npm install --production \
 && addgroup -S pterodactyl && adduser -S -D -H -G pterodactyl -s /bin/false pterodactyl \
 && apk del --no-cache make gcc g++ python linux-headers paxctl gnupg \
 && curl -sSL https://github.com/pterodactyl/sftp-server/releases/download/$(curl --silent "https://api.github.com/repos/pterodactyl/sftp-server/releases/latest" | grep '"tag_name":' | sed -E 's/.*"([^"]+)".*/\1/')/sftp-server > /srv/daemon/sftp-server \
 && mkdir -p /var/log/supervisord /lib64 && ln -s /lib/libc.musl-x86_64.so.1 /lib64/ld-linux-x86-64.so.2 \
 && chmod +x /srv/daemon/sftp-server \
 && chmod +x /srv/daemon/.docker/entrypoint.sh \
 && cp /srv/daemon/.docker/supervisord.conf /etc/supervisord.conf

EXPOSE 8080

ENTRYPOINT [ "/bin/ash","/srv/daemon/.docker/entrypoint.sh" ]

CMD [ "supervisord","-n","-c","/etc/supervisord.conf" ]

entrypoint.sh

cat .docker/entrypoint.sh
#!/bin/ash
## Ensure we are in /srv/daemon

if [ $(cat /srv/daemon/config/core.json | jq -r '.sftp.enabled') == "null" ]; then
    echo -e "Updating config to enable sftp-server."
    cat /srv/daemon/config/core.json | jq '.sftp.enabled |= false' > /tmp/core
    cat /tmp/core > /srv/daemon/config/core.json
elif [ $(cat /srv/daemon/config/core.json | jq -r '.sftp.enabled') == "false" ]; then
    echo -e "Config already set up for golang sftp server"
else
    echo -e "You may have purposly set the sftp to true and that will fail."
fi

exec "$@"

预先感谢, 一号

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。