centos 7.4安装codecombat

本文详细介绍了在CentOS 7.4环境下安装和配置NGINX的过程,包括必要的依赖安装,以及如何通过NGINX将80端口流量转发至3000端口。此外,还提供了Docker的安装步骤及CodeCombat镜像的运行教程,涵盖镜像拉取、容器启动、数据库下载和用户权限修改等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

零、使用centos 7.4

 

统一版本命令就可以畅通无阻了。
一、安装ngnix


1.安装gcc gcc是用来编译下载下来的nginx源码

  yum install gcc-c++

2、安装pcre和pcre-devel
    PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。
nginx 的 http 模块使用 pcre 来解析正则表达式,pcre-devel 是使用 pcre 开发的一个二次开发库。
    yum install -y pcre pcre-devel

3、安装zlib zlib提供了很多压缩和解方式,nginx需要zlib对http进行gzip
   yum install -y zlib zlib-devel

4、安装openssl openssl是一个安全套接字层密码库,nginx要支持https,需要使用openssl
    yum install -y openssl openssl-devel

5. 下载nginx 
   wget http://nginx.org/download/nginx-1.14.0.tar.gz
   
6.解压
tar -zxvf nginx-1.14.0.tar.gz -C  /usr/local

7. cd到文件路劲

cd /usr/local/nginx-1.14.0

8.编译
./configure --prefix=/usr --sbin-path=/usr/sbin/nginx --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_flv_module --with-http_gzip_static_module --http-log-path=/var/log/nginx/access.log --http-client-body-temp-path=/var/tem/nginx/client --http-proxy-temp-path=/var/tem/nginx/proxy --http-fastcgi-temp-path=/var/tem/nginx/fcgi --with-http_stub_status_module

9.安装
  make && make install

10.启动
nginx -c /etc/nginx/nginx.conf

11. 出现[emerg] getpwnam("nginx") failed 错误 执行
useradd -s /sbin/nologin -M nginx
id nginx

12.出现 [emerg] mkdir() "/var/temp/nginx/client" failed (2: No such file or directory) 错误 执行
sudo mkdir -p /var/tem/nginx/client


13.nginx 重启

进入nginx可执行目录sbin下,输入命令./nginx -s reload 即可


二、nginx  关键配置 80 转 3000

   server {
        listen       80;
        server_name  localhost;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
            #root   html;
            #index  index.html index.htm;
            #proxy_redirect on;
            #proxy_set_header X-Real-IP $remote_addr;
            #proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; 
            proxy_pass http://localhost:3000;
        }
  }


三、安装 docker

wget -qO- https://get.docker.com/ | sh

 

四、安装codecombat镜像
docker pull operepo/ope-codecombat
docker run -itd --name codecombatAliyun -p 0.0.0.0:3000:3000 operepo/ope-codecombat:latest /bin/bash
docker start codecombatAliyun
docker exec -it codecombatAliyun /bin/bash
cd /home/coco/codecombat && ./bin/coco-mongodb

new session
docker exec -it codecombatAliyun /bin/bash
五、下载数据库,超慢
cd /home/coco && sh start.sh

六、修改用户为管理员
db.users.update({'name':'aaaaa'},{$set:{'earned.gems':9999999, permissions:["godmode","admin"]}},true,false);

 

进入容器 
docker exec -it codecombatAliyun /bin/bash
mongo 
use coco 
db.users.update({'name':'abc'},{$set:{'earned.gems':9999999, permissions:["godmode","admin"]}},true,false); 

 

六、禁止注册

/home/coco/codecombat/server/routes/index.coffee

注释下面代码:
//app.post('/api/users', mw.api.postUser)
为什么没用???

CodeCombat 是一个通过玩游戏来学习编程的网站,也是GitHub上最大的开源CoffeeScript(一种脚本语言,类似JavaScript)项目,构筑在几十个开源项目之上的,有上千程序员和玩家为其编写程序、测试游戏。到目前为止,已经翻译成17种国外语言。       它是一款多人编码游戏,该款游戏的任务就是教会大家如何编程,并且通过游戏来提升开发者的技能水平。因为开源,我们可以为孩子们定制我们希望的样式。人们不需要任何编程知识即可了解程序的运行逻辑,并编出实用的代码。      游戏总共超过9千关,每个步骤都会有语音操作提示(非中文),无论你是新手还是编程精英都可以加入到这款游戏中。最重要的是,你是写代码执行游戏。你要扮演得是一名非常有力量的魔法师,要通过你写代码魔法,让你的人去消灭怪兽(其实是怪物)。看起来像是塔防游戏——《王城保卫战》,但却是一款即时战略游戏。每关都会有对话讲解如何操作(遗憾没有中文)左侧是游戏界面,右侧是代码界面,通过在右侧输入关键语句代码,控制左侧角色的移动和攻击等动作。前几关非常简单,几行“上下左右”和“攻击”的代码即可完成通关。每关结束后都有个回顾,告诉你在上一关学到了什么。当输入错误,比如大小写错误,在代码下方会提示具体的出错信息,玩家可以据此Debug。第二关中,你要先去右边吃蘑菇变强,再去击杀怪物。(点击图片查看具体代码,其实向右移动一步即可迟到蘑菇,代码中是两步)第三关,在击杀第一个怪物后,角色的血也不多了,所以要先去下方喝药瓶。下去喝药瓶,输入代码按回车,角色就会照做。第四关前N关都是编程中最基本的顺序语句,随着关数的提升,像“if…else,then”等判断、循环语句也会逐渐加入,可玩性越来越高。玩家在不知不觉也就具备了编程思维。 标签:编程游戏
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值