File size: 1,392 Bytes
a3de6d7
 
 
 
 
 
 
 
a5bca03
a3de6d7
210419e
 
 
a3de6d7
 
210419e
a3de6d7
 
 
 
be380c4
 
9b5d5c0
fae01ab
a3de6d7
 
210419e
a3de6d7
efcaef7
7713a05
3848729
 
 
7713a05
8df8574
a3de6d7
 
 
a5bca03
 
a3de6d7
 
 
 
 
210419e
a3de6d7
4b9d944
6110066
a3de6d7
ff56b75
a3de6d7
4b9d944
a3de6d7
4b9d944
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# 使用官方Ubuntu基础镜像
FROM ubuntu:22.04

# 设置环境变量
ENV TZ=Asia/Shanghai \
    JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64 \
    APP_USER=reader \
    APP_HOME=/app
    

# 安装依赖并配置环境
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime \
    && echo $TZ > /etc/timezone \
    && apt-get update \
    && apt-get install -y --no-install-recommends \
        openjdk-17-jdk \
        ca-certificates \
        curl \
        unzip \
        bash \
        jq \
        python3 \
        python3-pip \
        python3-venv \
    && apt-get clean \
    && rm -rf /var/lib/apt/lists/* \
    && update-ca-certificates \
    && useradd -r -u 1000 -m -d $APP_HOME -s /bin/bash $APP_USER \
    && chown -R $APP_USER:$APP_USER $APP_HOME

ENV VIRTUAL_ENV=/app/venv
RUN python3 -m venv $VIRTUAL_ENV
ENV PATH="$VIRTUAL_ENV/bin:$PATH"
RUN pip install --no-cache-dir huggingface_hub
    

# 配置Java环境路径
ENV PATH=$JAVA_HOME/bin:$PATH
ENV LANG C.UTF-8
ENV LC_ALL C.UTF-8

# 设置工作目录和用户
WORKDIR $APP_HOME
USER $APP_USER

# 复制安装脚本并设置权限
COPY --chown=reader:reader install_reader.sh ./
COPY --chown=reader:reader sync_data.sh ./
RUN chmod +x install_reader.sh \ 
    && sed -i 's|./bin/startup.sh -m single|exec &|' install_reader.sh
RUN chmod +x sync_data.sh

EXPOSE 8080
# 容器入口
CMD ["/bin/sh", "-c", "./sync_data.sh"]