• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
导航菜单
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx
您的位置:首页 > 服务器 >Linux > CentOS8上用Docker部署开源项目Tcloud的教程

CentOS8上用Docker部署开源项目Tcloud的教程

作者:倚楼$听风雨 字体:[增加 减小] 来源:互联网

本文主要包含docker部署开源项目,centos8,docker部署等服务器相关知识,倚楼$听风雨 希望可以进行参考

一、安装Docker

1、我是虚拟机装的Centos7,linux 3.10 内核,docker官方说至少3.8以上,建议3.10以上(ubuntu下要linux内核3.8以上)

root账户登录,查看内核版本如下

uname -a

2、把yum包更新到最新

yum update

(期间要选择确认,输入 y 即可)

3、安装需要的软件包,yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的

yum install -y yum-utils device-mapper-persistent-data lvm2

4、设置yum源

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo(阿里仓库)

5、可以查看所有仓库中所有docker版本,并选择特定版本安装

yum list docker-ce --showduplicates | sort -r

6、安装Docker,命令:yum install docker-ce-版本号,我选的是docker-ce-18.03.1.ce,如下

yum install docker-ce-18.03.1.ce

(期间要选择确认,输入 y 即可)

7、启动Docker,命令:systemctl start docker,然后加入开机启动,如下:

systemctl start docker #启动docker

systemctl enable docker #设置docker为开机自启[/code][code]sudo docker run --rm hello-world #启动docker中的hello-word

8、如果看到如图:

则说明安装doceker成功

二、接下来安装doceker-compose

1、运行以下命令下载Docker Compose的当前稳定版本:

sudo curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

2、将可执行权限应用于二进制文件:

sudo chmod +x /usr/local/bin/docker-compose

3、注意:如果命令docker-compose在安装后失败,请检查您的路径。您也可以创建指向/usr/bin或路径中任何其他目录的符号链接。

例如:

sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose

4、检查docker-compose 是否安装成功

doceker-compose --version

三、安装与配置Git

1、在Linux上是有yum安装Git,非常简单,只需要一行命令:

yum -y install git

输入:

git --version

查看Git是否安装完成以及查看其版本号

2、配置git:

git config --global user.name "xxx"git config --global user.email "xxxxx@xx.com"git config --global core.autocrlf falsegit config --global gui.encoding utf-8

3、执行下面的命令,一直回车,直到结束

ssh-keygen -t rsa -C xxxxx@xxx.com

4、生成ssh key

cat ~/.ssh/id_rsa.pub

5、登陆GitHub,点击setting>SSHand GPG keys>New SSH Key 将生成的密钥复制到Key中即可

6、测试是否配置成功

ssh -T git@github.com

7、出现这样一段话,即证明配置成功。

Hi RoninLee! You've successfully authenticated, but GitHub does not provide shell access.

四、后端部署

1、运行以下命令拉起源码:

git clone https://github.com/bigbaser/TcloudServer.git

2、进入到TcloudServer\deploy目录下,使用以下命令,拉取所有(等待一会,拉取时间较长)

docker-compose pull

 

3、然后修改local_config.py文件,

# 这里的账号密码是在docker-compose.yml中配置的,改成以下

SQLALCHEMY_DATABASE_URI = 'mysql://root:tc123456@mysql:3306/demo?charset=utf8'

 

4、再初始化kong的数据库(如果报错,再执行一次,成功的话会显示Database is up-to-date)

$ sudo docker-compose up -d kong_database

// 容器启动以后,数据库会本地挂载到 ./volumes/kong_database 里面

// 但由于权限问题,初始化数据库会失败,所以要先对该文件赋予权限

$ sudo chmod -R 777 ./volumes/kong_database

$ sudo docker-compose run --rm kong kong migrations bootstrap

 

5、然后启动所有项目

$ sudo docker-compose up -d

 

6、查看启动状态

$ sudo docker-compose ps

 

7、如果所有状态均为up,则运行正常,否则查看日志

sudo docker logs <name>查看日志

 

8、打开konga(kong的管理页面,http://localhost:9001),注册账号并登录,再新建连接,地址为http://kong:8001

9、成功后,进入SNAPSHOT页面,点击IMPORT FROM FILE,选择我们的kong.json文件,并进入DETAILS中RESTORE,全选导入,可能会出错,再执行一次即可,此时我们的网关服务已经运行完成,地址为http://localhost:9000

ps: 数据库初始化文件是init/init.sql,可以通过sudo docker-compose down -v再删除volume/mysql挂载目录之后,sudo docker-compose up -d来重新初始化数据库

五、前端部署

1、安装node环境

从CentOS储存库安装Node.js和npm

可以从标准CentOS存储库中安装Node.js和npm。

通过运行以下命令列出提供nodejs软件包的模块:

yum module list nodejs

 

要在CentOS系统上安装默认的Node.js软件包,请输入:

sudo yum module install nodejs

 

输入以下命令:

node --version #检查node 是否安装成功
npm --version #检查 npm 是否安装成功

 

2、使用以下命令拉取前端代码:

git clone https://github.com/bigbaser/Tcloud.git

 

3、在前端项目的根目录下执行:npm install 安装依赖包

4、安装依赖包如报以下错:

解决办法:

4.1、输入以下命令:

npm install -g cnpm --registry=https://registry.npm.taobao.org

 

4.2、建立软链接:

sudo ln -s {此处为你安装npm的路径}.npm-global/bin/cnpm /usr/local/bin/cnpm

 

4.3、输入:

cnpm --version 检查是否安装成功。

 

5、修改config/dev.env.js与index.js文件中的BASE_URL 地址为http://0.0.0.0

6、运行前端项目:

npm run dev

7、在非 localhost 域名下登录不成功,可以打开开发者工具,查看Application下的Cookies是否有JWT_TOKEN_TCLOUD_DEV。

如果没有,找到前端项目 Tcloud/src/store/modules/login.js,修改第57行,把

domain: process.env.NODE_ENV === 'development' ? 'localhost' : COOKIE_DOMAIN

修改为:

domain: COOKIE_DOMAIN

 

然后修改 config 下的 dev.env.js,把 COOKIE_DOMAIN 改成前端当前访问域名即可。

六、报错总结:

一、docker pull 镜像时报错:

1、

ERROR: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on such host

 

2、

ERROR: Get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on xxx.xxx.xxx.xxx:xxxx: lame referral

 

3、

Error response from daemon: Get https://index.docker.io/v1/search?q=sameersbn&n=25: dial tcp: lookup index.docker.io on 192.168.65.1:53: read udp 192.168.65.2:45190->192.168.65.1:53: i/o timeout

Error response from daemon: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

 

二、分析问题:

问题1、2这个是因为DNS域名没有解析的原因。

问

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • CentOS8上用Docker部署开源项目Tcloud的教程

相关文章

  • CentOS安装配置mariadb
  • Linux修改主机名的简单方法
  • Docker Dockerfile 定制镜像的方法
  • centos 搭建dns服务器 解析任意域名
  • centos7.2安装mysql5.7.17
  • Centos 6.5下安装MySQL 5.6
  • CentOS 7.1下rpm安装 MySQL
  • centos7下快速安装mysql
  • CentOS6下基于tengine搭建mp4/flv流媒体服务器(
  • centos6 安装最新mysql

文章分类

  • windows
  • 服务器硬件
  • 服务器运维
  • 云计算
  • 虚拟化
  • IIS教程
  • Linux
  • Apache
  • Ftp
  • DNS
  • Nginx

最近更新的内容

    • Centos 配置mailx使用外部smtp发送邮件
    • CentOS 7自建加密聊天环境Openfire XMPP服务
    • ubuntu修改terminal终端的主机名的实现方法
    • Ubuntu 14.04.4 LTS下LAMP环境的搭建
    • 在centos部署yii2 advanced框架
    • linux下修改mysql密码
    • Ubuntu 16.04 源码编译安装PHP7
    • Nginx基础应用详解
    • centos7部署LAMP+xcache
    • CentOS6.5安装Nginx1.10.2

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有