美文网首页
thought一期项目-环境配置过程

thought一期项目-环境配置过程

作者: 恐怕是小珠桃子 | 来源:发表于2016-10-10 12:34 被阅读28次

安装ubuntu系统

  1. 点击并按步骤安装Ubuntu系统,并根据内容安装相应内容。
  2. ubuntu自带的中文真的大写尴尬,我选择下载搜狗输入法,可点击此处按照教程内容进行安装

安装镜像

  1. 拷贝images文件夹, 下载load-images.sh文件到images下面
  2. 执行load-images.sh脚本
    注:下载load-images.sh后可以看到images文件夹里的load-image.sh是白色的,绿色才是可执行的,所以在命令行输入$chmod 777 load-image.sh
    (7=4+2+1 4 可读 2 可写 1 可执行第一个7是用户的权限,第2个是用户组的权限,第3个是其他的权限 )
    然后就可以看到load-image.sh变成绿色的了,接着执行./load-image.sh

安装Docker

  1. 点击安装docker,按教程顺序执行
  2. 如果是64位机要注意的是步骤7,应该将
    deb https://apt.dockerproject.org/repo ubuntu-xenial main
    修改为
    deb [arch = amd64] https://apt.dockerproject.org/repo ubuntu-xenial main
    因为这里默认是32位机。
  3. 如果所有步骤正确执行,最后一步会输出hello Docker
  4. 这里要注意的是,安装docker后,执行docker命令是要用sudo权限的,执行以下3条命令可以解决此问题:
$ sudo groupadd docker 
将当前用户加入docker组

$ sudo gpasswd -a ${USER} docker

$ sudo service docker restart
重新启动docker服务

安装Docker compose

  1. 点击官网按步骤安装Docker compose
  2. 下载的过程可能比较慢,也可以找下载好的小伙伴拷贝docker compose 可执行文件文件到 ubuntu的compose-> usr -> local -> bin 下面任意目录下执行:$ chmod +x /usr/local/bin/docker-compose

clone代码并配置环境

  1. clone代码,根据readme执行
$ git submodule init
$ git submodule update
$ git pull
$ git status
$ git submodule update
  1. 修改hosts文件
    进入hosts文件,另起一行添加127.0.0.1 local.twars
  2. 进入assembly,执行以下命令
$ docker-compose up -d mysql  //启动mysql
$ docker ps  //查看当前运行的容器
$ ./twars.sh ls  //查看数据库的初始化文件
$ ./twars.sh my  //初始化数据库和用户
  1. 进入paper-api执行以下命令
$ ./gradlew tasks
$ ./gradlew flywaymigrate

这个时候执行docker ps就可以看到容器中正在运行的服务,找到mysql的容器名或容器id,执行docker psdocker exec -it 容器名/id bash
就会进入mysql数据库,然后执行:

$ mysql -u root -pthoughtworks
$ show databases;  //查看数据库
$ use BronzeSword  //切换到BronzeSword数据库
$ show tables  //查看数据库中的表

上述过程如果结果正常输出即可输入exit退出

  1. 进入assembly下执行以下命令
$ ./twars.sh rs  //如果提示说没有权限那就加上sudo
$ ./twars.sh jk  //需要真正翻墙才可以执行成功
  1. 切换至web-api目录下,打开app.js,注释下面两行代码
var captcha = require('./middleware/captcha');
app.use(captcha(params));
  1. 切换至assembly下
  • 继续执行docker-compose up -d或者docker-compose up -d web-api接着执行docker ps
  • 如果你看到8个容器,直接进入步骤8进行操作
  • 如果发现7个容器(node没有启动),就查看一下web-api的日志,docker logs assembly_web-api_1(这里的assembly_web-api_1是web-api对应的容器名)
  • 假如执行后后出现Error: Cannot find module 'newrelic'…等等缺少模块的错误,切换至web-api目录下,执行npm i,这里友情提醒一下,一定要用npm,不要用cnpm之类的,这是个坑,你会发现后续执行所有命令都没毛病,然而就是会出现奇奇怪怪的问题!
  • 如果你实在觉得npm安装的太慢,执行npm config set registry https://registry.npm.taobao.org进行换源出来,然后,继续使用npm进行安装
  • 回到assembly下重新执行:
$ ./twars.sh rs
$ docker-compose up -d
$ docker ps -a
  • 此时应该可以看到node的status是 Up X seconds
  1. 继续在assembly目录下
  • 执行docker exec -it assembly_web-api_1 bash进入web-api容器
  • 执行cd /var/app/到达此目录下执行以下命令:
$ npm uninstall canvas
$ npm install canvas
  • 如果npm install canvas出错可尝试修改assembly/twars.sh中将JENKINS_ADDR=192.168.99.100:8088改为JENKINS_ADDR=local.twars:8088
  • 安装成功会出现** canvas@1.5.0 invalid **,Ctrl+D退出然后去到web-api/app.js中,找到之前注释的内容,去掉注释!
  1. 回到assembly目录下
  • docker ps 查看node:5.8是否up,如果node没有终止就执行docker-compose kill web-api
  • 执行docker-compose up -d
  1. 打开浏览器
  • 访问http://localhost:8888/,在首页点击注册查看验证码是否成功显示。
  • 填写相关信息进行注册,当然,现在还不能成功注册
  1. 回到项目下
  • 不能成功注册是因为mongo的twars数据库中不存在configurations表,也不存在相关记录
  • 执行docker exec -it assembly_mongo_1 bash进入mongo容器
  • 执行mongo开启数据库
  • show dbs查看数据库
  • use twars切换到twars数据库
  • show collections查看表可以看到没有configurations表
  • db.createCollection("configurations")创建configurations表
  • db.configurations.insert({"registerable":true,"qaContent":""})向表中插入数据
  1. 重启Docker
$ service docker stop   
$ service docker start
$ docker-compose up -d
  1. 重新注册账号
  • 访问http://localhost:8888/注册账号
  • 补全信息后点击开始答题,这时会发现题出来了,图出不来
  1. 让图片重出江湖
  • >web-api>config>config.yml文件下,修改31行的代码为staticFileServer: 'http://127.0.0.1:8888/fs/'
  • 哦啦,就酱紫~~

相关文章

  • thought一期项目-环境配置过程

    安装ubuntu系统 点击并按步骤安装Ubuntu系统,并根据内容安装相应内容。 ubuntu自带的中文真的大写尴...

  • ubuntu解除端口占用

    在一期代码环境配置时,成功配置之后,当我关闭电脑,再次去访问启动一期项目时,先执行service docker s...

  • 菜鸟Python笔记-基础篇01:环境配置

    1.系统配置 这里的系统环境搭建指的是学习Python的过程中所需要的环境配置,而不是具体项目开发过程中所涉及到的...

  • 配置laravel项目虚拟主机

    注意:需要配置在项目路径的public目录下 apache环境配置 nginx环境配置 IIS环境配置

  • [开发日志]android app Jenkins 配置说明

    添加构建参数: 选择参数化构建过程: 源码管理配置: 直接使用项目仓库 ssh 地址 构建环境配置 build n...

  • Flutter-window配置

    环境配置 pub 新增环境变量 项目配置 gradle配置 /android/gradle/wrapper/gra...

  • Maven项目搭建

    最近学习了下如何搭建maven项目,本文主要记录了我搭建maven项目的过程。包括:maven环境的配置,以及如何...

  • 项目环境配置

    一、adb使用 USB host和device模式切换:echo 1 > /sys/class/gpio/gpio...

  • 2019-12-03

    Flutter 学习计划 官网地址 官网 环境配置 mac 环境配置 github SDK 项目 SDK项目常见问...

  • spring-security_3_自定义过滤器

    配置基本环境 配置基本环境:spring-security基本环境配置项目目录结构如下图所示: 实现Usernam...

网友评论

      本文标题:thought一期项目-环境配置过程

      本文链接:https://www.haomeiwen.com/subject/iyqmyttx.html