玩转Docker | 使用Docker部署捕鱼网页小游戏

玩转Docker | 使用Docker部署捕鱼网页小游戏

  • 一、项目介绍
    • 项目简介
    • 项目预览
  • 二、系统要求
    • 环境要求
    • 环境检查
      • Docker版本检查
      • 检查操作系统版本
  • 三、部署捕鱼网页小游戏
    • 下载镜像
    • 创建容器
    • 检查容器状态
    • 下载项目内容
    • 查看服务监听端口
    • 安全设置
  • 四、访问捕鱼网页小游戏
  • 五、总结

一、项目介绍

项目简介

  • 捕鱼网页小游戏介绍:

Fishing-talentGame 是一个基于网页的开源捕鱼小游戏,使用 HTML 和 JavaScript 技术构建,确保了其在现代浏览器中的广泛兼容性和易访问性。游戏中玩家将面对多种类型和大小各异的鱼类,通过选择不同的武器如枪或网来捕捉它们,每成功捕获一条鱼都会根据鱼的种类和大小获得相应的积分。随着游戏级别的提升,不仅鱼类的数量会增加,捕捞的难度也会随之加大,为玩家带来持续的挑战与乐趣。这种设计既考验了玩家的反应速度和策略规划能力,也提供了丰富的游戏体验,适合各个年龄段的玩家享受轻松愉快的游戏时光。

项目预览

在这里插入图片描述

二、系统要求

环境要求

Docker 部署环境要求:

类别详细信息版本/要求
操作系统Linux (Ubuntu 20.04, CentOS 7)仅支持X86架构
Docker EngineDocker Enginev19.03 或更高版本
Docker ComposeDocker Composev2.0 或更高版本

说明:

  • 操作系统: 本项目支持的Linux发行版包括Ubuntu 20.04和CentOS 7等,且仅限于X86架构的设备。
  • Docker Engine: 需要安装v19.03或更高版本的Docker Engine。
  • Docker Compose: 需要安装v2.0或更高版本的Docker Compose。

环境检查

Docker版本检查

  • 检查Docker版本
root@wangge:~# docker -v
Docker version 24.0.7, build 24.0.7-0ubuntu2~22.04.1
  • 检查当前Docker服务状态
root@wangge:~# systemctl status docker
● docker.service - Docker Application Container EngineLoaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)Active: active (running) since Tue 2024-10-01 14:59:27 UTC; 3 weeks 6 days ago
TriggeredBy: ● docker.socketDocs: https://docs.docker.comMain PID: 2481 (dockerd)Tasks: 10Memory: 121.2MCPU: 12.696sCGroup: /system.slice/docker.service
  • 检查当前docker compose版本
root@wangge:~# docker compose version
Docker Compose version v2.19.1

检查操作系统版本

  • 查看当前实践环境的系统版本,当前宿主机的操作系统版本为Ubuntu 22.04.1 LTS
root@wangge:~# docker compose version
Docker Compose version v2.19.1
root@wangge:~# cat /etc/os-release
PRETTY_NAME="Ubuntu 22.04.1 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.1 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

三、部署捕鱼网页小游戏

下载镜像

拉取httpd镜像,如下所示:

root@wangge:~# docker pull httpd:2.4
2.4: Pulling from library/httpd
a480a496ba95: Pull complete
3a2663e66670: Pull complete
4f4fb700ef54: Pull complete
dbde712f81fb: Pull complete
867b2ea3628d: Pull complete
6bd9d3710aae: Pull complete
Digest: sha256:bbea29057f25d9543e6a96a8e3cc7c7c937206d20eab2323f478fdb2469d536d
Status: Downloaded newer image for httpd:2.4
docker.io/library/httpd:2.4

在这里插入图片描述

创建容器

执行以下命令,快速创建斗地主项目容器。

docker run -dit --name my-web -p 6200:80 -v "$PWD":/usr/local/apache2/htdocs/ httpd:2.4

也可以使用docker compose方式来创建容器,部署文件内容如下:

version: '3.9'
services:httpd:image: 'httpd:2.4'volumes:- '/docker/httpd/html:/usr/local/apache2/htdocs/'ports:- '6200:80'container_name: my-webrestart: always
  • 执行以下命令,根据部署文件创建httpd容器
root@wangge:/docker/httpd# docker compose up -d
[+] Running 2/2✔ Network httpd_default  Created                                                                                   0.2s✔ Container my-web       Started                                                                                   0.4s

检查容器状态

当创建容器完毕后,我们需要确认容器是否正常启动。

root@wangge:/docker/httpd#  docker ps
CONTAINER ID   IMAGE                                                 COMMAND                  CREATED          STATUS      PORTS                                   NAMES
0a78e7cb31e6   httpd:2.4                                             "httpd-foreground"       35 seconds ago   Up 34 seconds   0.0.0.0:6200->80/tcp, :::6200->80/tcp   my-web

下载项目内容

在/docker/httpd/html目录,下载项目。

 git clone https://github.com/sjh0824/Fishing-talentGame.git

在这里插入图片描述

  • 查看项目内容,如下所示:
root@wangge:/docker/httpd/html# tree -L 1 ./Fishing-talentGame/
./Fishing-talentGame/
├── fishjoy.game.js
├── images
├── index.html
├── js
└── src3 directories, 2 files

查看服务监听端口

  • 执行以下命令,检查服务监听端口。
root@wangge:/docker/httpd/html# ss -tunlp | grep 6200
tcp   LISTEN 0      4096          0.0.0.0:6200       0.0.0.0:*    users:(("docker-proxy",pid=93460,fd=4))
tcp   LISTEN 0      4096             [::]:6200          [::]:*    users:(("docker-proxy",pid=93466,fd=4))

安全设置

  • 执行以下命令,关闭防火墙。如果不想关闭防火墙,则需要放行相关服务端口。
systemctl stop firewalld && systemctl disable firewalld
  • 关闭selinux服务
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config

四、访问捕鱼网页小游戏

我们在浏览器访问:http://192.168.3.251:6200/Fishing-talentGame/,将IP替换为自己服务器IP地址,即可正常访问到斗地主网页小游戏。

在这里插入图片描述

在这里插入图片描述

五、总结

通过Docker部署Fishing-talentGame捕鱼网页小游戏,我体验到了容器化技术带来的极大便利。只需几个简单的Docker命令,包括拉取镜像、运行容器和配置端口映射,就快速搭建起了游戏环境。整个过程不仅简化了复杂的配置步骤,还确保了游戏在不同系统上的稳定性和一致性。最终,我在本地浏览器中流畅地运行并享受了这款充满乐趣的捕鱼游戏,充分感受到了Docker在应用部署方面的高效与强大。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/459789.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

局域网 docker pull 使用代理拉取镜像

局域网 docker pull 使用代理拉取镜像 1、需求: 我有win主机,上面装有代理可连接dockerhub;我另有linux主机,直接pull因墙失败,想走win的代理访问dockerhub拉镜像;两台主机在同一个局域网中; …

c语言中结构体传参和实现位段

结构体传参 有两种方法: #include<stdio.h> struct S {int data[1000];int num; }; //结构体传参 void print1(struct S s) {printf("%d\n",s.num); } //结构体地址传参 void print2(struct S *ps) {printf("%d\n",ps->num); }int main() {pr…

2024年10月HarmonyOS应用开发者基础认证全新题库

注意事项&#xff1a;切记在考试之外的设备上打开题库进行搜索&#xff0c;防止切屏三次考试自动结束&#xff0c;题目是乱序&#xff0c;每次考试&#xff0c;选项的顺序都不同 这是基础认证题库&#xff0c;不是高级认证题库注意看清楚标题 高级认证题库地址&#xff1a;20…

HTML3D旋转相册

文章目录 序号目录1HTML满屏跳动的爱心(可写字)2HTML五彩缤纷的爱心3HTML满屏漂浮爱心4HTML情人节快乐

Depcheck——专门用于检测 JavaScript 和 Node.js 项目中未使用依赖项的工具

文章目录 Depcheck 是什麽核心功能&#x1f4da;检测未使用的依赖&#x1f41b;检测缺失的依赖✨支持多种文件类型&#x1f30d;可扩展性 安装与使用1. 安装 Depcheck2. 使用 Depcheck Depcheck 的应用总结项目源码&#xff1a; Depcheck 是什麽 来看一个常见错误场景&#x1…

Chrome和Firefox哪款浏览器的密码管理更安全

在当今数字化时代&#xff0c;浏览器已成为我们日常生活中不可或缺的工具。其中&#xff0c;谷歌Chrome和Mozilla Firefox是两款广受欢迎的浏览器。除了浏览网页外&#xff0c;它们还提供了密码管理功能&#xff0c;帮助用户保存和管理登录凭证。然而&#xff0c;关于哪款浏览器…

Camp4-L0:Linux 前置基础

书生浦语大模型实战营Camp4-L0:Linux前置基础 教程地址&#xff1a;https://github.com/InternLM/Tutorial/tree/camp4/docs/L0/linux任务地址&#xff1a;https://github.com/InternLM/Tutorial/blob/camp4/docs/L0/linux/task.md 任务描述完成所需时间闯关任务完成SSH连接与…

C++之多态的深度剖析

目录 前言 1.多态的概念 2.多态的定义及实现 2.1多态的构成条件 2.1.1重要条件 2.1.2 虚函数 2.1.3 虚函数的重写/覆盖 2.1.4 选择题 2.1.5 虚函数其他知识 协变&#xff08;了解&#xff09; 析构函数的重写 override 和 final关键字 3. 重载&#xff0c;重写&…

如何从iconfont中获取字体图标并应用到微信小程序中去?

下面我们一一个微信小程序的登录界面的制作为例来说明&#xff0c;如何从iconfont中获取字体图标是如何应用到微信小程序中去的。首先我们看效果。 这里所有的图标&#xff0c;都是从iconfont中以字体的形式来加载的&#xff0c;也就是说&#xff0c;我们自始至终没有使用一张…

Linux shell编程学习笔记87:blkid命令——获取块设备信息

0 引言 在进行系统安全检测时&#xff0c;我们需要收集块设备的信息&#xff0c;这些可以通过blkid命令来获取。 1 blkid命令的安装 blkid命令是基于libblkid库的命令行工具&#xff0c;可以在大多数Linux发行版中使用。 如果你的Linux系统中没有安装blkid命令&#xff0c;…

RuoYi-Vue 使用开发 人员管理-查询功能

说明&#xff1a;这里仅仅开发列表显示 与 查询功能&#xff0c;剩下的添加、修改等可能会遇到报错&#xff0c;后面有机会&#xff0c;会单独写一篇文章教学处理 1.了解开发需求 作为示例的二级开发&#xff0c;这里的人员管理&#xff0c;管理的是 部门信息&#xff0c;员工…

Tomcat 11 下载/安装 与基本使用

为什么要使用Tomcat&#xff1f; 使用Apache Tomcat的原因有很多&#xff0c;以下是一些主要的优点和特点&#xff1a; 1. 开源与免费 Tomcat是一个完全开源的项目&#xff0c;任何人都可以免费使用。它由Apache软件基金会维护&#xff0c;拥有一个活跃的社区&#xff0c;这…

Django入门教程——用户管理实现

第六章 用户管理实现 教学目的 复习数据的增删改查的实现。了解数据MD5加密算法以及实现模型表单中&#xff0c;自定义控件的使用中间件的原理和使用 需求分析 系统问题 员工档案涉及到员工的秘密&#xff0c;不能让任何人都可以看到&#xff0c;主要是人事部门进行数据的…

[ 问题解决篇 ] 解决远程桌面安全登录框的问题

&#x1f36c; 博主介绍 &#x1f468;‍&#x1f393; 博主介绍&#xff1a;大家好&#xff0c;我是 _PowerShell &#xff0c;很高兴认识大家~ ✨主攻领域&#xff1a;【渗透领域】【数据通信】 【通讯安全】 【web安全】【面试分析】 &#x1f389;点赞➕评论➕收藏 养成习…

微信小程序时间弹窗——年月日时分

需求 1、默认当前时间2、选择时间弹窗限制最大值、最小值3、每次弹起更新最大值为当前时间&#xff0c;默认值为上次选中时间4、 minDate: new Date(2023, 10, 1).getTime(),也可以传入时间字符串new Date(2023-10-1 12:22).getTime() html <view class"flex bb ptb…

【Spring框架】Spring框架的开发方式

目录 Spring框架开发方式前言具体案例导入依赖创建数据库表结构创建实体类编写持久层接口和实现类编写业务层接口和实现类配置文件的编写 IoC注解开发注解开发入门&#xff08;半注解&#xff09;IoC常用注解Spring纯注解方式开发 Spring整合JUnit测试 Spring框架开发方式 前言…

江协科技STM32学习- P24 DMA数据转运DMA+AD多通道

&#x1f680;write in front&#x1f680; &#x1f50e;大家好&#xff0c;我是黄桃罐头&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流 &#x1f381;欢迎各位→点赞&#x1f44d; 收藏⭐️ 留言&#x1f4dd;​…

【刷题11】CTFHub技能树sql注入系列

整数型注入 看到源码了&#xff0c;直接sql一套秒了 字符型注入 SQL 报错注入 构造payload 1 and (select extractvalue(1,concat(’~’,(select database())))) 后续步骤跟sql基本步骤一样 SQL 布尔注入 人工测试太麻烦&#xff0c;这里直接使用sqlmap,知道这有sql注入漏洞&am…

面试经典 150 题.P26. 删除有序数组中的重复项(003)

本题来自&#xff1a;力扣-面试经典 150 题 面试经典 150 题 - 学习计划 - 力扣&#xff08;LeetCode&#xff09;全球极客挚爱的技术成长平台https://leetcode.cn/studyplan/top-interview-150/ 题解&#xff1a; class Solution {public int removeDuplicates(int[] nums) …

docker中使用ros2humble的rviz2不显示问题

这里写目录标题 docker中使用ros2humble的rviz2不显示问题删除 Docker 镜像和容器删除 Docker 容器Linux服务器下查看系统CPU个数、核心数、(make编译最大的)线程数总结&#xff1a; RVIZ2 不能显示数据集 docker中使用ros2humble的rviz2不显示问题 问题描述&#xff1a; roo…