flzta commited on
Commit
df597ee
·
verified ·
1 Parent(s): 86a87ab

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +44 -43
Dockerfile CHANGED
@@ -1,44 +1,45 @@
1
- FROM alpine:latest
2
-
3
- WORKDIR /opt/app
4
-
5
- ENV TZ Asia/Shanghai
6
- ENV APP_NAME app # 设置 app 的默认名称为 app
7
-
8
- # 安装必要的依赖
9
- RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories \
10
- && apk update && apk add --no-cache wget tar gzip python3 py3-pip curl bash tzdata ca-certificates
11
-
12
- RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
13
-
14
- # 从构建上下文的 files 目录下复制 app 可执行文件 (使用环境变量)
15
- COPY files/${APP_NAME} /opt/app/
16
-
17
- # 创建 app 数据目录
18
- RUN mkdir -p /opt/app/app_data
19
- RUN chmod -R 755 /opt/app
20
-
21
- # 将用户 www-data 添加到已存在的组
22
- RUN adduser -u 1000 -D -S -G www-data www-data
23
-
24
- # 更改 /opt/app 目录的所有权为 www-data 用户
25
- RUN chown -R www-data:www-data /opt/app
26
-
27
- # 创建 Python 虚拟环境并安装 webdavclient3
28
- ENV VIRTUAL_ENV=/opt/venv
29
- RUN python3 -m venv $VIRTUAL_ENV
30
- ENV PATH="$VIRTUAL_ENV/bin:$PATH"
31
- RUN pip install --no-cache-dir requests webdavclient3
32
-
33
- # 复制同步脚本
34
- COPY sync_data.sh /opt/app/
35
- RUN chmod +x /opt/app/sync_data.sh
36
-
37
- # 暴露 app 的默认端口 (根据需要调整)
38
- EXPOSE 5432
39
-
40
- # 切换到 www-data 用户
41
- USER www-data
42
-
43
- # 设置运行 app 的命令,包含同步脚本 (使用环境变量)
 
44
  CMD ["/bin/sh", "-c", "/opt/app/sync_data.sh; sleep 10; ./$APP_NAME -c /opt/app/app.ini"]
 
1
+ FROM alpine:latest
2
+
3
+ WORKDIR /opt/app
4
+
5
+ ENV TZ Asia/Shanghai
6
+ ENV APP_NAME app1 # 设置 app 的默认名称为 app1
7
+
8
+ # 安装必要的依赖
9
+ RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories \
10
+ && apk update && apk add --no-cache wget tar gzip python3 py3-pip curl bash tzdata ca-certificates
11
+
12
+ RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
13
+
14
+ # 从构建上下文的 files 目录下复制 app 可执行文件 (使用环境变量)
15
+ COPY files/${APP_NAME} /opt/app/
16
+ # 设置 app 的默认名称为 app1
17
+
18
+ # 创建 app 数据目录
19
+ RUN mkdir -p /opt/app/app_data
20
+ RUN chmod -R 755 /opt/app
21
+
22
+ # 将用户 www-data 添加到已存在的组
23
+ RUN adduser -u 1000 -D -S -G www-data www-data
24
+
25
+ # 更改 /opt/app 目录的所有权为 www-data 用户
26
+ RUN chown -R www-data:www-data /opt/app
27
+
28
+ # 创建 Python 虚拟环境并安装 webdavclient3
29
+ ENV VIRTUAL_ENV=/opt/venv
30
+ RUN python3 -m venv $VIRTUAL_ENV
31
+ ENV PATH="$VIRTUAL_ENV/bin:$PATH"
32
+ RUN pip install --no-cache-dir requests webdavclient3
33
+
34
+ # 复制同步脚本
35
+ COPY sync_data.sh /opt/app/
36
+ RUN chmod +x /opt/app/sync_data.sh
37
+
38
+ # 暴露 app 的默认端口 (根据需要调整)
39
+ EXPOSE 5212
40
+
41
+ # 切换到 www-data 用户
42
+ USER www-data
43
+
44
+ # 设置运行 app 的命令,包含同步脚本 (使用环境变量)
45
  CMD ["/bin/sh", "-c", "/opt/app/sync_data.sh; sleep 10; ./$APP_NAME -c /opt/app/app.ini"]