dockerfile说明及示例
description | ||
examples | ||
LICENSE | ||
README.md |
Dockerfile 示例
Kiwix Server
ZIM 资源阅读器,可在线预览 ZIM 文档。运行 Kiwix Server 服务后即可通过浏览器访问 ZIM 文件。
官方网站:
- 官网 : https://kiwix.org
- ZIM 文件下载地址 : https://download.kiwix.org/zim
目录说明:
- standard : 标准镜像构建目录
- alpine : 精简镜像构建目录
- example : 使用示例
构建说明:
-
进入指定目录(standard 或 alpine)
-
构建镜像
docker build --no-cache -t 镜像名称:镜像TAG .
示例:
- 标准镜像(基于 openSUSE Leap 15.6)
docker build --no-cache -t hty1024/kiwix-serve:3.7.0 .
- 精简镜像(基于 AlpineLinux 3.20.0)
docker build --no-cache -t hty1024/kiwix-serve:3.7.0-alpine .
使用方式:
-
下载 ZIM 文件至主机
-
配置 ZIM 文件所属用户
将 ZIM 文件所属用户组及用户均修改为 1024
,示例如下:
chown -R 1024.1024 ./data
- 运行 Docker 容器
- 直接运行
docker run --name 容器名称 -dit -p 服务端口号:10080 -v ZIM文件目录:/data 镜像名称:镜像TAG
示例:
docker run --name kiwix-serve -dit -p 10080:10080 -v ./data:/data hty1024/kiwix-serve:3.7.0
docker run --name kiwix-serve -dit -p 10080:10080 -v ./data:/data hty1024/kiwix-serve:3.7.0-alpine
- Docker Compose 方式运行 请参考 example 目录内的 compose.yaml 文件
PaperMC Paper
Paper是基于Spigot的Minecraft游戏服务器,旨在大大提高性能并提供更高级的功能和API。
官方网站:
- 官网 : https://papermc.io
- 官网 : https://papermc.io/software/paper
- 官方文档 : https://docs.papermc.io
- 官网文档 : https://docs.papermc.io/paper
目录说明:
- alpine : 精简镜像构建目录
- example : 使用示例
构建说明:
-
进入指定目录(alpine)
-
构建镜像
docker build --no-cache -t 镜像名称:镜像TAG .
示例:
- 精简镜像(基于 Amazon Corretto 17.0.8)
docker build --no-cache -t hty1024/papermc/paper:1.20.1-134-alpine .
使用方式:
- 创建相关目录(用于持久化相关数据)
创建 world
、world_nether
、world_the_end
、config
、plugins
、logs
目录,示例如下:
mkdir -pv {world,world_nether,world_the_end,config,plugins,logs}
- 下载并按需修改配置文件
server.properties
、paper-global.yml
、paper-world-defaults.yml
(文件见example
目录)
具体选项参考官方文档
-
阅读授权并修改
eula.txt
文件中eula
的值为true
-
配置相关文件的所属用户
将目录的所属用户组及用户均修改为 1024
:
chown -R 1024.1024 world world_nether world_the_end config plugins logs server.properties eula.txt
- 运行容器前的目录结构示例如下
drwxr-xr-x 2 1024 1024 6 Aug 21 15:00 config
-rw-r--r-- 1 1024 1024 157 Aug 21 13:18 eula.txt
drwxr-xr-x 2 1024 1024 6 Aug 21 15:00 logs
drwxr-xr-x 2 1024 1024 6 Aug 21 15:00 plugins
-rw-r--r-- 1 1024 1024 1285 Aug 21 14:23 server.properties
drwxr-xr-x 2 1024 1024 23 Aug 21 15:03 world
drwxr-xr-x 2 1024 1024 23 Aug 21 15:03 world_nether
drwxr-xr-x 2 1024 1024 23 Aug 21 15:03 world_the_end
world
: Overworld目录world_nether
: Nether目录world_the_end
: End目录config
: 配置文件目录server.properties
: 服务端配置文件eula.txt
: 授权校验文件plugins
: 插件目录logs
: 日志目录
- 运行 Docker 容器
- 直接运行
docker run --name 容器名称 -dit -p 服务端口号:25565 -v world目录:/opt/papermc/world -v world_nether目录:/opt/papermc/world_nether -v world_the_end目录:/opt/papermc/world_the_end -v config目录:/opt/papermc/config -v plugins目录:/opt/papermc/plugins -v logs目录:/opt/papermc/logs 镜像名称:镜像TAG
示例:
docker run --name papermc-server -dit -p 25565:25565 -v ./world:/opt/papermc/world -v ./world_nether:/opt/papermc/world_nether -v ./world_the_end:/opt/papermc/world_the_end -v ./config:/opt/papermc/config -v ./plugins:/opt/papermc/plugins -v ./logs:/opt/papermc/logs hty1024/papermc/paper:1.20.1-134-alpine
- Docker Compose 方式运行 请参考 example 目录内的 compose.yaml 文件
OpenSSL
一个用于通用加密和安全通信的健壮的、商业级的、功能齐全的工具包。
官方网站:
目录说明:
- standard : 标准镜像构建目录
- alpine : 精简镜像构建目录
- example : 使用示例
构建说明:
-
进入指定目录(standard 或 alpine)
-
构建镜像
docker build --no-cache -t 镜像名称:镜像TAG .
示例:
- 标准镜像(基于 openSUSE Leap 15.6)
docker build --no-cache -t hty1024/openssl:3.3.1 .
- 精简镜像(基于 AlpineLinux 3.20.0)
docker build --no-cache -t hty1024/openssl:3.3.1-alpine .
使用方式:
- 直接运行
docker run --name 容器名称 -dit -p 服务端口号:10080 -v ZIM文件目录:/data 镜像名称:镜像TAG
示例:
docker run --name openssl -dit hty1024/openssl:3.3.1
docker run --name openssl -dit hty1024/openssl:3.3.1-alpine
- Docker Compose 方式运行 请参考 example 目录内的 compose.yaml 文件