62 lines
1.8 KiB
Docker
62 lines
1.8 KiB
Docker
# NapCat-Docker 镜像构建文件
|
||
# 依据 39 服现存镜像的 docker history 还原(构建 commit: 60dc2d72126890a0ae88a36f64000c08b7b8bf7a)
|
||
# 原仓库 https://github.com/NapNeko/NapCat-Docker 已 404 删除
|
||
|
||
FROM ubuntu:22.04
|
||
|
||
ENV DEBIAN_FRONTEND=noninteractive \
|
||
TZ=Asia/Shanghai
|
||
|
||
RUN apt-get update && apt-get install -y \
|
||
libnss3 \
|
||
libnotify4 \
|
||
libsecret-1-0 \
|
||
libgbm1 \
|
||
xvfb \
|
||
libasound2 \
|
||
fonts-wqy-zenhei \
|
||
gnutls-bin \
|
||
libglib2.0-dev \
|
||
libdbus-1-3 \
|
||
libgtk-3-0 \
|
||
libxss1 \
|
||
libxtst6 \
|
||
libatspi2.0-0 \
|
||
libx11-xcb1 \
|
||
ffmpeg \
|
||
unzip \
|
||
dbus-user-session \
|
||
curl \
|
||
jq \
|
||
gosu \
|
||
tzdata && \
|
||
echo "${TZ}" > /etc/timezone && \
|
||
ln -sf /usr/share/zoneinfo/${TZ} /etc/localtime && \
|
||
apt autoremove -y && \
|
||
apt clean && \
|
||
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
||
|
||
RUN useradd --no-log-init -d /app napcat
|
||
|
||
WORKDIR /app
|
||
|
||
COPY NapCat.Shell.zip entrypoint.sh /app/
|
||
COPY templates/ /app/templates/
|
||
|
||
# 安装 Linux QQ(版本与原始镜像一致)
|
||
RUN arch=$(arch | sed s/aarch64/arm64/ | sed s/x86_64/amd64/) && \
|
||
curl --retry 3 --connect-timeout 30 --max-time 600 -fL -o linuxqq.deb \
|
||
"https://qqdl.gtimg.cn/qqfile/QQNT/9.9.36/beta/9ee04bef/linuxqq_3.2.34-53644_${arch}.deb" && \
|
||
dpkg -i --force-depends linuxqq.deb && \
|
||
rm linuxqq.deb
|
||
|
||
# 注入 NapCat 加载脚本
|
||
RUN 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/.config/QQ]
|
||
VOLUME [/app/napcat/config]
|
||
|
||
ENTRYPOINT ["bash", "entrypoint.sh"]
|