napcat / Dockerfile
New-Bing's picture
Update Dockerfile
a81db1f verified
raw
history blame contribute delete
955 Bytes
FROM mlikiowa/napcat-docker:base
RUN useradd --no-log-init -d /app napcat
WORKDIR /app
# 关键:先创建 templates 目录(在镜像内部)
# 这样在 COPY 时就不会因为 templates 不存在而失败
RUN mkdir -p /app/templates
# 现在可以安全地执行官方的 COPY 指令了
COPY NapCat.Shell.zip entrypoint.sh templates /app/
# 安装 Linux QQ 等后续操作
RUN arch=$(arch | sed s/aarch64/arm64/ | sed s/x86_64/amd64/) && \
curl -o linuxqq.deb https://dldir1.qq.com/qqfile/qq/QQNT/ec800879/linuxqq_3.2.20-40990_${arch}.deb && \
dpkg -i --force-depends linuxqq.deb && rm linuxqq.deb && \
chmod +x entrypoint.sh && \
echo "(async () => {await import('file:///app/napcat/napcat.mjs');})();" > /opt/QQ/resources/app/loadNapCat.js && \
sed -i 's|"main": "[^"]*"|"main": "./loadNapCat.js"|' /opt/QQ/resources/app/package.json
VOLUME /app/napcat/config
VOLUME /app/.config/QQ
ENTRYPOINT ["bash", "entrypoint.sh"]