【Docker】手把手教你搭建好玩的docker项目合集
创始人
2025-05-29 21:06:21

这是我在使用docker后,慢慢一个个累计起来的项目,觉得还挺有意思的。

之后我会持续慢慢的更新新的项目,大伙如何有好玩的docker项目,欢迎来找我讨论哇,我每天都会看私信的

在这里插入图片描述

文章目录

      • docker搭建数据库
      • docker搭建私人网盘 nextcloud
      • docker搭建自己的图床
      • docker搭建MineCraft我的世界服务器
      • docker搭建青龙控制面板
      • docker搭建私人邮件服务器 ewomail
      • docker搭建nginx转发服务器

docker搭建数据库

使用docker安装数据库是非常省事的,而且想安什么类型的数据就安什么类型的数据库,比如mysql,mongodb,redis等等,想安什么版本的数据库就安什么版本的数据库,非常方便,就连删掉也是一条命令的事情!!!

例如安装mysql:

docker pull mysql

或者指定版本的mysql:

docker pull mysql:5.7

然后就是运行起来了

docker run -idt -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7
  • -idt 指的是后台运行,每次run的时候背熟固定加上就行了
  • -p 指映射的端口
  • -e 是容器内的环境变量,这里MYSQL_ROOT_PASSWORD是指定mysql root用户的密码
  • –name 指定容器的名字
  • 最后的mysql是镜像名,指定从哪个镜像创建容器

ps: 我一般拒绝使用-v 来挂载,对新手不是非常好理解,而且针对数据库的话每次存储都要占用两倍的空间。

然后就能之间访问数据库了,是不是非常方便!!!

mysql -u root -p 123456

docker搭建私人网盘 nextcloud

有自己的一个网盘存东西是很舒服的!!!,而且还能给同学,家里人使用。

nextcloud有很多强大的功能,这里就不一一列举了,更强大的是它还支持移动端访问

image-20230316221621652

第一步,首先从镜像站pull下来nextcloud的镜像

docker pull nextcloud

第二步,保证启动一个docker创建的mysql数据库,用来给nextcloud存储数据。在第一个项目已经讲解了喔。

docker run -idt -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 --name mysql mysql:5.7

一定要进入数据库中,创建一个空的数据库nextcloud用来之后存入数据

mysql -u root -p 123456
CREATE DATABASE nextcloud;
exit;

第三步,启动nextcloud

docker run -idt --name=nextcloud --link mysql:db -p 8080:80 --restart=always nextcloud
  • -idt 同样固定模式,要背熟使用的,表示后台启动
  • –name 指定容器的名字
  • –link mysql:db 这是表示做一个映射,mysql代表我们自己数据库的容器名,db表示的是mysql映射到容器的名字,之后我们会用到的。
  • -p 表示端口映射,8080是主机的端口,80是容器内部的端口,我们到时候请求主动的8080端口就行
  • –restart=always 表示容器重启后,nextcloud也会自动重启(没啥用)
  • 最后的nextcloud表示镜像的名字

第四步,请求主机的ip+端口,来配置nextcloud

数据库用户可以是root,或者可以自己来新建数据库用户来管理nextcloud

image-20230316224146389

这样自己的网盘就搭建好了!!!

有需要网盘的友友也可以来找我,我给你分配一个账号,不过最多只有5G空间,以及共享的10M宽带。

docker搭建自己的图床

图床可以用来存图片,也可以方便写博客来自动上传图片形成外链。

我自己的图床也是用nextcloud网盘来自动实现的,nextcloud网盘怎么搭建可以参考上一个docker项目喔。

我上传图片的工具是PicGo,它有nextcloud插件可以来自动上传图片,只需要配置账号名和密码就行啦。

image-20230316225313871

image-20230316225359519

docker搭建MineCraft我的世界服务器

我之前是用windows服务器开服,不是很难。但是用docker来开服的话,异常容易,2分钟的事情。

不管是纯原版服务器,还是forge版服务器,还是Spigot版服务器等等,只要pull网上对应的镜像就可以啦。

我是在docker hub镜像站搜索的,里面有很多大神都diy自己Minecraft服务器

image-20230316230301324

image-20230316230352375

我是自己来diy的一个服务器容器,下面以我开服为例(纯净版和forge版,1.19.2 ):

第一步,我首先pull一个有java环境的镜像(拥有原始jdk的)

docker pull openjdk:20-slim-buster

第二步,启动容器

docker run -idt -p 8123:8123 -p 25565:25565 -p 25575:25575 --name minecaft openjdk:20-slim-buster 
  • -idt 固定的设定后台启动,背熟就行了
  • -p 8123:8123 -p 25565:25565 -p 25575:25575 其中 8123、25565、25575都是minecrart服务器运行时要开放的端口,必须要映射的,不让访问不了
  • –name minecaft 指定容器名
  • 最后 openjdk:20-slim-buster 代表一个java环境的镜像(拥有原始jdk的)

第三步,下载纯净版jar包,并放到容器内部

在mojang官网上可以

image-20230316231920844

把下载下来的jar包,放到服务器内部,然后再copy到容器内部,至于怎么copy到容器内部,是docker的基本操作了,详细可以参考我的另一篇博客,docker的基本命令总结

docker cp ./server.jar minecraft:/root

第四步,进入容器内部,然后使用java执行server.jar

进入

docker exec -it minecraft /bin/bash

启动

java -Xmx1024M -Xms1024M -jar server.jar nogui

第五步,修改 eula.txt,正式启动

vim /root/eula.txt

image-20230317001547494

原版启动:

java -Xmx1024M -Xms1024M -jar server.jar nogui

forge版启动:

熟悉forge的都知道,需要先下载forge安装包,forge-1.19.2-43.1.52-installer.jar ,同样放到和server.jar一个目录下,进行执行

java -jar forge-1.19.2-43.1.52-installer.jar 

然后服务器就变成forge版本了,使用./run.sh来启动服务器,以下代表启动成功

./run.sh

image-20230317001833714

当然,我自己也制作了一个镜像,如果你想直接来用的话,可以直接pull我的镜像(不建议)

docker pull liangyuanshao/minecraft

有一块玩我的世界的小伙伴嘛?可以的话,加我来一块开服。

docker搭建青龙控制面板

安装青龙面板最常用的就是自动薅羊毛,每天自动薅京东的羊毛,薅快手的羊毛等等。

青龙控制面板网站通过青龙命令来定时执行自定义的一些脚本,这些脚本可以通过别人的“库“拉取来得到。

比较有名的就是京东脚本,京东脚本有很多小的脚本,可以来自动请求京东的接口来进行完成自动签到、自动领金币、自动领积分等等功能

当然还可以自己写Python脚本,Java脚本等等来定时执行。我就写过一个百度知道自动签到的脚本,然后每天自动跑哈哈哈。

image-20230317002310161

第一步,拉取青龙镜像

docker pull whyour/qinglong

该镜像是来自官方docker hub,https://hub.docker.com/r/whyour/qinglong

第二步,启动就行了,官方也有详细的教程,我直接摘取官方的命令了

docker run -idt \-v $PWD/ql:/ql/data \-p 5700:5700 \--name qinglong \--hostname qinglong \--restart unless-stopped \whyour/qinglong:latest
  • -idt 不用多解释了,后台启动,固定记忆就行了
  • -v 挂载,初学docker会有点难理解,相当于把主机目录和容器目录共享,我一般都不会使用-v
  • -p 青龙面板必须开放5700端口,完成映射
  • –name 青龙面板容器的名称
  • –restart unless-stopped 除非面板停止,不让不会重启(没啥用)
  • 最后是青龙面板镜像的名称

安装完后,就可以进行拉库了,可以拉京东的库,拉快手的库等等,反正是能薅到羊毛滴。这个教程就不多讲了。改天出一个集合文章。

docker搭建私人邮件服务器 ewomail

私人邮件服务器可以实现自定义结尾的邮箱名。比如 @kunkun.cn @iloveu.com ,我自己的是 @liangyuanshao.top。而且邮箱前缀也是可以自定义的,且具有无限个。

liangyuanshao@liangyuanshao.top,1@liangyuanshao.top,kunkun@liangyuanshao.top等等

image-20230317103151152

首先 要有自己的域名,而且 自定义后缀==域名

比如说,我的域名是 liangyuanshao.top ,我邮箱的后缀就为 @liangyuanshao.top

因此,你先去购买域名吧,域名查询网址:https://wanwang.aliyun.com/domain/searchresult/#/?keyword=liangyuanshao.cn

image-20230317110031849

第一步,拉取一个centos镜像

docker pull centos:centos7

为什么不推荐拉取别人现成的ewomail镜像?

其实很简单,根据ewomail官网上的介绍,其实搭建ewomail一行代码代码就能搞定,之后我会提到。而且我尝试过使用其它人的docker来搭建,很麻烦,最后都没有成功。

第二步,创建ewomail容器

docker run  -idt \-p 25:25 \-p 109:109 \-p 110:110 \-p 143:143 \-p 465:465 \-p 587:587 \-p 993:993 \-p 995:995  \-p 80:80 \-p 8080:8080 \--name ewomail centos:centos7
  • -idt 固定模式,表示后台启动,记住就行了

  • -p的一系列端口,这些端口映射都是需要开放的,因为ewomail官方文档里面已经写了

  • –name 表示启动容器的名字,ewomail

  • 最后表示从哪个镜像来生成容器

注意:

假如说你是腾讯云服务器,很可惜,25端口是不开放的,你无法搭建自己的邮件服务器。它说是为了净化网络环境。

假如说你是阿里云服务器,25端口是被占用的,你必须先kill掉对应端口的进程,然后再启动才可以

netstat -nlp | grep 25   # 查找对应进程id
kill xxxxx    # 然后杀掉

第三步,创建,容器进入容器内,完成搭建

进入容器

docker exec -it ewomail /bin/bash

安装wget,因为一般的新centos容器是没有wget的

apt-update
apt install wget

一键安装,注意,后面的liangyuanshao.top要换成你自己的域名

wget -c https://down.ewomail.com/install-03.sh && sh install-03.sh liangyuanshao.top

第四步,进入后台完成配置

后台端口是8010,你可以访问你的服务器+加端口8010来进行后台设置了

刚开始默认用户: admin
默认密码: ewomail123

进入邮箱系统设置,完成ewomail的域名配置,这个域名一定是要你已经购买的域名

image-20230317112802251

第五步,创建邮箱用户

image-20230317114802038

然后访问服务器8000端口,登录就行啦

第六步,域名解析

进入到域名解析页面,需要解析的项有7项,你对着做就可以了

1.12.68.28要换成你自己的云服务器ip,liangyuanshao.top换成你自己的域名

image-20230317114531062

然后等待一段时间后,就能用给qq邮箱发送邮件了,因为域名解析要几分钟

image-20230317114946765

docker搭建nginx转发服务器

同样和搭建数据库一样,非常容易

第一步,拉取镜像

docker pull ngnix:latest

第二步,运行

-p 指定需要开放的端口,前面的80是主机的,后面的80是容器内的端口

docker run -p 80:80 --name ngnix ngnix:latest

第三步,配置

进入到容器内,完成配置

docker exec -it ngnix /bin/bash#一般没有vim,可以先安装vim
apt-update
apt install vim
  • /usr/sbin/nginx:主程序
  • /etc/nginx:存放配置文件
  • /usr/share/nginx:存放静态文件
  • /var/log/nginx:存放日志

持续会更新噢!!😊

相关内容

热门资讯

央企控股上市公司密集发声,多措... 今年以来,国务院国资委多次部署提高央企控股上市公司质量,加强市值管理,传递信心、稳定预期。近期多家央...
上交所:将推动上市公司进一步加... 上海6月6日电 (高志苗)上海证券交易所6日发布消息称,上交所近日召开高分红重回报暨上市公司价值提升...
特斯拉“跌下神坛”? 6月5日,马斯克与特朗普反目互怼后不久,特斯拉股价当日一度暴跌16%,截至当天收盘,特斯拉股价较开盘...
汉武帝都点赞的一次复仇 汉武帝... 上文讲到齐景公复霸,复哪个霸呢?春秋五霸之首,齐桓公。不过今天我们不讲著名的齐桓公,而是讲他的哥哥,...
“普五”破价到了756元,五粮... 随着“618”大促的到来,白酒企业的价格体系,再次遭受强烈冲击。去年,各大电商平台以“百亿补贴”为主...
比买黄金还赚钱!“塑料茅台”L... 年轻人的“茅台”竟然是个“娃娃”?泡泡玛特旗下的Labubu,正借着爆火的流量红利,身价一路飙升。据...
聚焦“两高四着力” 人大代表在... 河南日报客户端记者 陈小平 “今年,我们将采取‘建租结合’的方式,在北京、上海、武汉、沈阳、西安、成...
原创 促... 周末,市场没有利空,大家的情绪慢慢平静了,上证指数再次临近3400点,已经是物是人非了。银行分化,白...
江西“首富”李德仙,财富缩水超... 光伏行业分化,已成大趋势。今年一季度如果说哪家光伏巨头的表现最让外界大跌眼镜,那么晶科能源一定“榜上...
福莱新材推“三维力”电子皮肤 ... 21世纪经济报道记者 赵云帆 上海报道从未来终局角度思考,柔性多模态电子皮肤无疑是通用型人形机器人的...
2025年6月7日比特币与以太... 特朗普马斯克公开决裂引发市场巨震,比特币反弹至104,472美元,以太坊大幅反弹至2,474美元 一...
广州首批配售型保障房摇出选房序... 6月7日上午,广州今年首批配售型保障房迎来了第二次摇号确定选房序号的关键环节。在前期经过递交申请、第...
贬低业绩可以忍,贬低颜值不能忍... 6月7日,金石杂谈近期太关注公募了,不曾想对私募圈消息闭塞了。在6月5日深夜,私募小魔女李蓓开通个人...
热搜!“全智贤老公炒币亏了15... 6月7日午后,“全智贤老公炒币亏了150亿韩元”相关话题一度登上微博热搜。据观察者网援引韩媒报道,随...
中信建投:持续看好创新药产业技... 人民财讯6月7日电,中信建投研报表示,美国临床肿瘤学会(ASCO)年会是世界上规模最大、学术水平最高...
特斯拉“擎天柱”人形机器人项目... 来源:中国新闻网中新网6月7日电(吴家驹)综合外媒报道,特斯拉“擎天柱”(Optimus)人形机器人...
周鸿祎:准备干掉360整个市场... 周鸿祎称准备干掉360整个市场部。360集团创始人、董事长兼首席执行官周鸿祎发视频称,“我准备干掉3...
一娃难求的Labubu,捧出河... 如今,河南 “消费三象”胖东来、蜜雪冰城和泡泡玛特,已成为商超、茶饮、潮玩领域 “新标杆”。相较其他...
年轻人氪金“塑料茅台”,Lab... 来源|Tech星球文|张宁洢去年开始,一个名叫Labubu的新系列潮玩在北美悄然走红。这个有着尖耳朵...
千亿A股创新药公司,现重大研发... 本周 (6月2日—6月6日) 机构调研公司数量仍在百家以上,截至6月6日18时,共有141家上市公司...
比亚迪、小米超特斯拉成国人买车... 在中国汽车市场上,特斯拉一直都是非常特殊的存在,作为新能源汽车的龙头,特斯拉的号召力可谓是无与伦比,...
截至4月底首次突破33万亿元—... 公募基金总规模仍在持续上涨。截至今年4月底,我国境内公募基金规模首次突破33万亿元大关,这也是自20...
法网-高芙2-1逆转萨巴伦卡首... 北京时间6月8日凌晨,2025赛季网球大满贯法国公开赛继续进行,在女单决赛中,赛会2号种子高芙在先丢...
险资年内举牌15次,半年不到举... 如果要问最近几个月最火的资本力量是什么?各大保险公司的保险资本无疑是其中最亮眼的明星,险资不断大规模...
深度|券商托管私募这十年:从零... 编者按:十载春华秋实,鉴往知来;十年星河璀璨,与光同行。自破茧初啼至引领风潮,“金长江”评选始终以专...
美联储系统高管:特朗普关税政策... 新华社北京6月7日电 美国圣路易斯联邦储备银行行长阿尔韦托·穆萨莱姆日前接受英国《金融时报》采访时说...
中央汇金成为8家金融机构实控人... 6月6日,证监会发布公告称,长城国瑞证券、东兴证券、信达证券、东兴基金、信达澳亚基金、长城期货、东兴...
至信股份欲登陆上交所主板 打造... 重庆至信实业股份有限公司6月6日在上海证券交易所网站披露招股说明书(申报稿),拟在上交所主板首次公开...
无证电焊电动自行车支架,北京丰... 新京报讯(记者彭镜陶)近期,北京市丰台区消防救援支队开展了人员密集场所动火作业全链条整治行动,查处一...
知名连锁品牌济南一门店,运营一... 近两年,火遍全网的“谷子经济”正在经历一次行业洗牌。6月6日,新黄河记者走访市场发现,省内知名二次元...