Day14 突如其来的Minecraft

通常有玩过线上游戏的工程师都会有个小小的梦想,是自己能架个私服跟朋友们一起玩乐,前阵子因为疫情的缘故一群朋友都只能待在家玩电脑,於是就有个同学提出说要玩Minecraft,揪齐了7、8个人後大家都买了JAVA版的主程序,由一位同学使用了官方托管的Minecraft Realms Servers服务来当主机终於可以快快乐乐的玩游戏啦。

当然一个月过後因为免费托管结束了,要嘛选择一个月三百块继续托管,要嘛把地图备份起来请另一个同学再开一个免费托管然後把地图上传,身为工程师的我不禁开始想,如果我的电脑几乎都不关机的,效能也够强,那是不能自己架设一个Server来用呢?

於是我在Minecraft Wiki找到了解法,里面有最基本的一步一步下指令的做法,但让我眼睛一亮的是居然有出Docker的做法,这不就让我苦练数月的Docker可以派上用场了吗?话不多说直接按照教学来做


此为官方的范例command

docker run -d -p 25565:25565 --name mc -e VERSION=1.7.9 -e EULA=TRUE itzg/minecraft-server

经过前几天的教学已经知道此Container会运行在後台、会对外开一个25565的port供外部连线、container_name叫mc、专属的环境参数VERSION可指定游戏版本,我玩的是最新1.17.1版,EULA似乎是一个同意不作为营利用途的参数,最後是选择的Image。

利用指令确定Container状态

docker ps

确定STATUS为healthy时代表可以连线了,此时可以Mac用ifconfig,Windows可以用ipconfig来确认自己的IP位置,然後共用区域网路的装置就可以用此IP进行连线了。
https://ithelp.ithome.com.tw/upload/images/20210914/20115048LViIuHeQ1k.jpg

https://ithelp.ithome.com.tw/upload/images/20210914/20115048w7i4GJ5Mkr.jpg

搭啷~这不就成功了吗?真是简单迅速又明了呢,当然身为一个服务器管理者又怎麽会这样就满足了呢?

今天又要学新的指令了,进入这个Container

docker exec -it mc bash

此时会在data资料夹,这边就可以处理

  1. IP BAN人,看谁不爽就BAN他
  2. Account BAN人,管他多会换IP直接BAN帐号
  3. logs里面存放了Server大大小小发生的事情
  4. server.properties是Minecraft世界的参数,可以到Minecraft Wiki里面看都有解释各个参数的意义
  5. whitelist,有黑名单就有白名单,开启此设定的话就只有在白名单内的人能连线
  6. world则存放了这个Minecraft世界的所有资讯,包括地图、人物、道具、状态等等,可以利用Volumes参数将此资料夹制作备份

当然还有更多的细节,例如Server的记忆体配置等等更深奥的东西可以研究,只要照着这四天的练习都做过一遍的话人人都可以是食神人人都可以自己开Minecraft私服的。

今天的离题之旅就倒此结束了,谢谢观看的各位,请记得按赞分享开启小铃铛,你的支持会让按赞数+1。


<<:  DAY14 资料室--Vuex项目结构

>>:  第九天:使用 Gradle Wrapper

Day 6 Swift语法-基础篇(4/5)-Function

今天谈到最常用的函式 function 一般来说,函式的定义方式如图中所示 name: 代表函式的名...

30. 铁人赛心得

铁人赛心得 这是第二次参加铁人赛,第一次主题是javasript的入门学习,第二次是比较有一点难度的...

第05天 - 一些些的Bootstrap、CSS

1.首先是 Bootstrap 的用法,其实就是 【1.引入它 ; 2.复制它】 引入的部分在【第0...

Day 1. Pre-Start × 微前言

行前导读 第一次参加铁人赛的你,先礼貌性来个自我介绍吧?! 嗨大家好! This is Ian ,...

什麽是 HTTP ?

前言 该文章同步发布於 我的部落格 有天在网路上看到一张很有趣的图片,是关於浏览器输入网址後发生的行...