本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

dockercraft Docker 镜像下载 - 轩辕镜像

dockercraft 镜像详细信息和使用指南

dockercraft 镜像标签列表和版本信息

dockercraft 镜像拉取命令和加速下载

dockercraft 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

dockercraft
docker/dockercraft
自动构建

dockercraft 镜像详细信息

dockercraft 镜像标签列表

dockercraft 镜像使用说明

dockercraft 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

一个简单的Minecraft Docker客户端,用于通过Minecraft游戏界面可视化和管理Docker容器,支持与容器交互及执行Docker命令。
6 收藏0 次下载activedocker镜像

dockercraft 镜像详细说明

dockercraft 使用指南

dockercraft 配置说明

dockercraft 官方文档

Dockercraft

!Dockercraft

一个简单的Minecraft Docker客户端,用于可视化和管理Docker容器。

!Dockercraft

***视频

警告:请仅在本地机器上使用Dockercraft。它目前不支持身份验证。每个玩家都应被视为root用户!

镜像概述和主要用途

Dockercraft是一个创新的Docker管理工具,它将Docker容器的管理功能集成到Minecraft游戏环境中。用户可通过Minecraft客户端直观地查看Docker容器状态,并通过游戏内交互(如拉杆、按钮)或聊天命令来管理容器(启动、停止、删除等)。该工具无需修改Minecraft客户端,所有功能通过服务端实现,适用于希望以可视化、趣味性方式管理本地Docker环境的用户。

核心功能和特性

  • 可视化管理:通过Minecraft游戏世界直观展示Docker容器,每个容器以游戏内实体形式呈现
  • 容器交互:通过游戏内拉杆和按钮控制容器的启动、停止和删除操作
  • 命令支持:通过Minecraft聊天窗口执行Docker命令(如/docker run redis
  • 自定义环境:支持配置游戏世界的生物群系(Biomes)和修饰器(Finishers),调整地形外观
  • 原生Docker集成:通过挂载Docker套接字与本地Docker引擎通信,实时同步容器状态

如何运行Dockercraft

1. 安装Minecraft:minecraft.net

Minecraft客户端无需修改,直接获取***版本即可。

2. 拉取或构建Dockercraft镜像:(***镜像即将推出)

bash
docker pull gaetan/dockercraft

bash
git clone ***:docker/dockercraft.git
docker build -t gaetan/dockercraft dockercraft

3. 运行Dockercraft容器:

bash
docker run -t -i -d -p 25565:25565 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  --name dockercraft \
  gaetan/dockercraft

说明:在容器内挂载/var/run/docker.sock是向Docker远程API发送请求所必需的。Minecraft服务器默认端口为25565,如需使用其他端口:-p <端口>:25565

4. 打开Minecraft > 多人游戏 > 添加服务器

服务器地址为Docker主机的IP。如果使用默认端口,无需指定端口号。

若使用Docker Machine,可通过以下命令获取IP:docker-machine ip <机器名称>

5. 加入服务器!

你应该能在游戏世界中看到至少一个容器,即运行Dockercraft服务器的容器。你可以通过拉杆和按钮与容器交互,也可按T键(默认)或/键打开聊天窗口执行Docker命令。

命令必须以/开头。

若使用/键打开聊天窗口,会自动填充/字符;若使用T键打开,则需手动输入/后再输入命令。

示例:/docker run redis

!Dockercraft

自定义Dockercraft

觉得平原地形太单调?别担心!Dockercraft支持自定义游戏世界,可使用Cuberite支持的任何生物群系和修饰器。

你可以在docker run命令中添加以下额外参数:

bash
docker run -t -i -d -p 25565:25565 \
  -v /var/run/docker.sock:/var/run/docker.sock \
  --name dockercraft \
  gaetan/dockercraft <生物群系> <地面高度> <海平面> <修饰器>

自定义示例

向往海洋的宁静? !oceans

尝试Ocean 50 63,或更寒冷的版本:FrozenOcean 50 63 Ice

喜欢沙漠的炽热? !desert

那么Desert 63 0 DeadBushes正是你需要的

怀念松树林? !forest

试试Forest 63 0 Trees

想要充满乐趣的丛林? !jungle

欢迎来到丛林:Jungle 63 0 Trees

即将推出的功能

Dockercraft才刚刚开始!我们计划支持更多Docker功能,例如:

  • 列出Docker Machines并通过传送门查看其中内容
  • 支持更多Docker命令
  • 显示容器日志(每个容器对应一个按钮,点击即可查看)
  • 可视化容器链接关系
  • Docker网络支持
  • Docker卷支持
  • ...

如果你对Dockercraft的设计感兴趣,相关讨论在这个issue中进行。我们使用Magicavoxel制作这些精美的原型:

!Dockercraft

你可以在这个文件夹中找到我们的Magicavoxel模型文件。

获取最新消息,请关注我们的***账号:@dockercraft。

工作原理

Minecraft客户端本身未做任何修改,所有操作均在服务端实现。我们使用的Minecraft服务器是[***]

该服务器支持插件系统,可通过Lua编写脚本插件。我们为Docker开发了专用插件(world/Plugins/Docker)。虽然Cuberite没有提供直接的插件API,但它有Web管理界面,插件可以处理"webtabs"请求:

lua
Plugin:AddWebTab("Docker",HandleRequest_Docker)

这意味着插件可以捕获发送到[***]的POST请求。

Goproxy

Docker远程API的事件通过一个小型守护进程(用Go编写)传输到Lua插件(go/src/goproxy):

go
func MCServerRequest(data url.Values, client *http.Client) {
	req, _ := http.NewRequest("POST", "[***]", strings.NewReader(data.Encode()))
	req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
	req.SetBasicAuth("admin", "admin")
	client.Do(req)
}

goproxy二进制文件还可以通过Lua插件传递参数执行,向守护进程发送请求:

lua
function PlayerJoined(Player)
	-- 刷新容器列表
	r = os.execute("goproxy containers")
end

贡献

想要参与Dockercraft的开发?请遵循Docker的贡献指南。

!Dockercraft

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"