| FROM ubuntu:22.04 |
|
|
| ENV DEBIAN_FRONTEND=noninteractive \ |
| PLAYIT_HOME=/data/playit_gg \ |
| SECRET_KEY="" \ |
| MC_DIR=/data/bedrock-server \ |
| SCRIPTS_DIR=/data/scripts \ |
| LOG_DIR=/data/logs |
|
|
| |
| RUN apt-get update && \ |
| apt-get install -y --no-install-recommends \ |
| curl wget unzip \ |
| libcurl4 libssl3 ca-certificates \ |
| uuid-runtime nano tar gzip \ |
| python3 python3-pip \ |
| cron git \ |
| && rm -rf /var/lib/apt/lists/* |
|
|
| |
| RUN pip install --no-cache-dir \ |
| google-api-python-client \ |
| google-auth-httplib2 \ |
| google-auth-oauthlib |
|
|
| |
| RUN mkdir -p \ |
| /data/bedrock-server/worlds \ |
| /data/bedrock-server/backups \ |
| /data/playit_gg \ |
| /data/scripts \ |
| /data/logs |
|
|
| WORKDIR /data/bedrock-server |
|
|
| |
| RUN curl -L -A "Mozilla/5.0 (Windows NT 10.0; Win64; x64)" \ |
| -o /tmp/bedrock-server.zip \ |
| "https://www.minecraft.net/bedrockdedicatedserver/bin-linux-preview/bedrock-server-1.26.20.28.zip" && \ |
| unzip /tmp/bedrock-server.zip -d /data/bedrock-server && \ |
| rm /tmp/bedrock-server.zip && \ |
| chmod +x /data/bedrock-server/bedrock_server |
|
|
| |
| RUN curl -L \ |
| -o /usr/local/bin/playit \ |
| "https://github.com/playit-cloud/playit-agent/releases/latest/download/playit-linux-amd64" && \ |
| chmod +x /usr/local/bin/playit |
|
|
| |
| COPY server.properties allowlist.json permissions.json ./ |
|
|
| |
| COPY start.sh run.sh status_server.py ./ |
|
|
| |
| COPY backup.sh /data/scripts/backup.sh |
| COPY auto_restart.sh /data/scripts/auto_restart.sh |
| COPY health_check.sh /data/scripts/health_check.sh |
| COPY monitor.sh /data/scripts/monitor.sh |
| COPY google_drive_backup.py /data/scripts/google_drive_backup.py |
|
|
| |
| COPY crontab.txt /data/crontab.txt |
|
|
| |
| RUN chmod +x \ |
| /data/bedrock-server/start.sh \ |
| /data/bedrock-server/run.sh \ |
| /data/scripts/*.sh |
|
|
| |
| |
| EXPOSE 7860 19132/udp 19133/udp |
|
|
| USER root |
| CMD ["bash", "/data/bedrock-server/start.sh"] |
|
|