Update Dockerfile
Browse files- Dockerfile +11 -7
Dockerfile
CHANGED
@@ -1,8 +1,9 @@
|
|
1 |
# 使用OpenJDK作为基础镜像
|
2 |
FROM openjdk:21-jdk-slim
|
3 |
|
4 |
-
# 更新包列表并安装 curl
|
5 |
-
RUN apt-get update &&
|
|
|
6 |
|
7 |
# 创建缓存目录并设置权限
|
8 |
RUN mkdir -p /minecraft/cache && chmod -R 777 /minecraft/cache
|
@@ -10,7 +11,7 @@ RUN mkdir -p /minecraft/cache && chmod -R 777 /minecraft/cache
|
|
10 |
# 创建必要的目录并设置权限
|
11 |
RUN mkdir -p /minecraft/versions/1.21 && chmod -R 777 /minecraft/versions
|
12 |
|
13 |
-
# 下载并安装cloudflared
|
14 |
RUN curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb && \
|
15 |
dpkg -i cloudflared.deb
|
16 |
|
@@ -26,6 +27,12 @@ RUN chmod 777 /minecraft/paper.jar /minecraft/1.21.jar
|
|
26 |
COPY server.properties /minecraft/server.properties
|
27 |
COPY eula.txt /minecraft/eula.txt
|
28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
# 获取并输出公网 IP 到控制台
|
30 |
RUN curl ifconfig.me
|
31 |
|
@@ -35,8 +42,5 @@ EXPOSE 25565
|
|
35 |
# 设置所有文件的权限
|
36 |
RUN chmod -R 777 /minecraft
|
37 |
|
38 |
-
# 创建cloudflared配置文件
|
39 |
-
COPY config.yml /etc/cloudflared/config.yml
|
40 |
-
|
41 |
# 启动命令
|
42 |
-
CMD ["sh", "-c", "cloudflared tunnel --config /etc/cloudflared/config.yml run
|
|
|
1 |
# 使用OpenJDK作为基础镜像
|
2 |
FROM openjdk:21-jdk-slim
|
3 |
|
4 |
+
# 更新包列表并安装 curl 和其他必要工具
|
5 |
+
RUN apt-get update && \
|
6 |
+
apt-get install -y curl
|
7 |
|
8 |
# 创建缓存目录并设置权限
|
9 |
RUN mkdir -p /minecraft/cache && chmod -R 777 /minecraft/cache
|
|
|
11 |
# 创建必要的目录并设置权限
|
12 |
RUN mkdir -p /minecraft/versions/1.21 && chmod -R 777 /minecraft/versions
|
13 |
|
14 |
+
# 下载并安装 cloudflared
|
15 |
RUN curl -L --output cloudflared.deb https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb && \
|
16 |
dpkg -i cloudflared.deb
|
17 |
|
|
|
27 |
COPY server.properties /minecraft/server.properties
|
28 |
COPY eula.txt /minecraft/eula.txt
|
29 |
|
30 |
+
# 创建 cloudflared 配置文件
|
31 |
+
COPY config.yml /etc/cloudflared/config.yml
|
32 |
+
|
33 |
+
# 复制 cloudflared 凭证文件
|
34 |
+
COPY dfed0ead-79e1-41cf-82b8-88ca8148a577.json /root/.cloudflared/dfed0ead-79e1-41cf-82b8-88ca8148a577.json
|
35 |
+
|
36 |
# 获取并输出公网 IP 到控制台
|
37 |
RUN curl ifconfig.me
|
38 |
|
|
|
42 |
# 设置所有文件的权限
|
43 |
RUN chmod -R 777 /minecraft
|
44 |
|
|
|
|
|
|
|
45 |
# 启动命令
|
46 |
+
CMD ["sh", "-c", "cloudflared tunnel --config /etc/cloudflared/config.yml run & java -Xms4G -Xmx8G -XX:+UseG1GC -XX:MaxGCPauseMillis=50 -XX:+UnlockExperimentalVMOptions -XX:+ParallelRefProcEnabled -XX:+AlwaysPreTouch -XX:G1HeapWastePercent=5 -XX:G1MixedGCCountTarget=4 -XX:G1MixedGCLiveThresholdPercent=90 -XX:InitiatingHeapOccupancyPercent=15 -XX:G1NewSizePercent=30 -XX:G1MaxNewSizePercent=40 -XX:G1HeapRegionSize=16M -jar 1.21.jar nogui"]
|