一、docker-compose安装

docker-compose安装之前需要安装docker,docker安装教程看这篇:

https://blog.csdn.net/qq_36640395/article/details/107449652

1.经过多种安装方式测试,我们选择最稳定的方式,使用python-pip工具安装,首先安装python的依赖,执行命令:

yum -y install epel-release

2.安装 pip:

yum -y install python-pip

3.查看python-pip版本(截止作者测试时间,最新版本为20.1.1):

pip --version

4. 更新pip:

pip install --upgrade pip

5.安装docker-compose:

pip install docker-compose 

6.确认是否安装成功:

docker-compose version

7.设置docker-compose为开机自启:

vim /etc/rc.d/rc.local

加入下面这行,保存:

/usr/local/bin/docker-compose -f /www/docker/trace_fecshop/docker-compose.yml up -d

(第7步可以直接使用xftp打开/etc/rc.d,进行rc.local文件的编辑,然后保存即可。)

至此docker-compose安装完成。

二、docker-compose部署后端项目

本篇介绍使用最简单的方式部署单机后端应用,微服务集群部署等会在后续文章介绍。

1.后端以java语言使用springBoot框架开发的项目为例,我们将项目打包成jar包形式,找个合适的位置,使用xftp上传到服务器(ctrl+c ctrl+v直接从本地copy到服务器即可)。我司习惯把项目放到mnt文件:

2.我随意建立一个名为demo-wx的文件存放我的jar包,然后新建文件名为docker-compose.yml的文件:

3.docker-compose内容为:

version: '3.7'
services:demo-wx:image: java:8container_name: demo-wxenvironment:#- TZ=Asia/Shanghai- server.port=80ports:- "9911:80"volumes:- "./:/app"- "./logs:/logs"#- /usr/share/fonts:/usr/share/fontsrestart: alwaysentrypoint: "java -Xmx1024m -Xms200m -Xmn100m -Xss5m -XX:PermSize=256m -XX:MaxPermSize=512m -XX:-UseGCOverheadLimit -XX:+UseParallelGC -XX:ParallelGCThreads=10 -XX:+UseCompressedOops -jar /app/wx-1.0.jar"network_mode: "bridge"

这里做一下主要内容的解释:

services和container_name为我们自己起的容器名称即可;

image为基础镜像,这里我们部署java项目,使用java8基础镜像;

server.port为容器内的端口,ports映射规则为:docker宿主机端口号:docker内端口号;

entrypoint部分,“wx-1.0.jar”换成你自己的jar包即可,其它的可以直接复制即可。

注意:docker-compose的缩进一定要注意,一个空格就可能导致无法启动项目。

4.切换到xshell输入命令,切换到我们项目目录下:

cd /mnt/demo-wx

5.执行命令,启动docker-compose:

docker-compose up -d

镜像及容器创建成功。

6.查看下容器的状态,执行命令:

docker ps -a

我们的容器已成功启动,访问地址为->你的服务器地址:映射出来的端口地址,比如我的为192.168.0.1:9911。

7.第一次下载java8基础镜像会比较慢,我们把docker默认拉取镜像的地址改为阿里云的镜像地址:

执行命令:

vim /etc/docker/daemon.json

加入此行保存即可:

{"registry-mirrors": ["https://registry.docker-cn.com"]
}

之后我们的镜像下载速度就会快很多了。

三、docker-compose部署前端项目

我司前端开发使用的是vue,第一步和第二步跟前端部署流程是一样的,差别一是在前端我们上传的文件是打包出来的dist文件夹:

二是在docker-compose文件的内容:

version: '3.3'
services:demo-front:image: nginx:stable-alpine container_name: deno-frontenvironment:- TZ=Asia/Shanghaiports:- "9912:80"volumes:- "./dist:/usr/share/nginx/html"- "./logs:/var/log/nginx/"restart: alwaysnetwork_mode: "bridge"

可以看到我们的基础镜像是nginx的。

放好文件后我们切换到yml目录下执行docker-compose up -d命令即可。

我们更新文件的时候需要把文件直接覆盖掉,然后执行命令:

docker-compose down

停掉容器再执行up命令启动即完成项目的更新。

到此为止docker-compose的部署教程完毕,如果项目需要重复的迭代更新,这种手动替换的方式效率会很低,我们可以使用jenkins做一键部署,jenkins相关的部署放在后续讲解。

docker-compose安装及前后端项目部署相关推荐

  1. Docker环境下的前后端分离部署与运维 脚本

    <Docker环境下的前后端分离部署与运维>脚本 文章目录 <Docker环境下的前后端分离部署与运维>脚本 一.Docker虚拟机常用命令 二.安装PXC集群,负载均衡,双机 ...

  2. vue+django前后端项目部署

    一.python3的安装 1.安装python前的库环境: yum install gcc patch libffi-devel python-devel zlib-devel bzip2-devel ...

  3. 阿里云ECS服务器前后端项目部署

    最近自己写了一个小项目,想把它部署在服务器上以便实时查看,在此记录一下自己的部署过程以及在部署过程中遇到的问题,方便日后查看. 参考:www.kovli.com/2017/09/19/- 作者:Kov ...

  4. 买了云服务器不会用?写了网站不会部署?超详细springboot+vue前后端项目部署教程来啦

    大家好!我是未来村村长,就是那个"请你跟我这样做,我就跟你这样做!"的村长

  5. docker 一键部署前后端项目 ruoyi

    使用 docker 一键部署前后端项目 这里我以开源项目ruoyi 的 vue 前后端为例,想要通过 docker 一键跑起来,需要对项目做部分调整. 修改 springboot yml 的配置 ap ...

  6. 【Docker】1、 前后端分离项目 下载启动运行

    人人开源前后端分离项目下载与配置 文章目录 人人开源前后端分离项目下载与配置 前后端分离框架介绍 后端项目下载与配置 1.renren-fast后台项目介绍 2.开发环境搭建 3.下载后端renren ...

  7. 前后端分别部署教程 ---- 第三部分项目部署和挂载到微信公众号

    3. 前端 这里介绍的是idea开发工具下的项目打包 3.1 项目打包 一定要在指定项目路径下打开 Terminal,不然会打错项目的包. 右击项目名称,然后点击 Open in Terminal: ...

  8. 关于springboot vue前后端分离项目部署到阿里云轻量服务器(前后端分开部署)

    0.购买阿里云服务器 1.安装jdk 使用yml安装 2.安装mysql 3.安装nginx 4.打包后端项目 后端项目更改: 在pom.xml文件中,增加打包成jar包的配置文件 applicati ...

  9. 若依框架前后端项目分离部署(验证码不显示原因解决步骤)

    标题若依框架项目部署分为前端项目部署和后端项目部署. 一.后端项目部署(比较省略) 1.jar部署方式 将jar包放到文件的service目录下,使用命令行执行执行脚本. 2.war部署方式 ruoy ...

最新文章

  1. 机房收费系统【VB版】——前期准备
  2. C mysql添加_MYSQL将表 B C 插入表A方法
  3. windows 软件安装事件_苹果安装windows,报windows支持软件未能存储到所选驱动器
  4. Python XML的解析与创建
  5. R使用neuralnet包构建神经网络回归模型并与线性回归模型对比实战
  6. jquery纯数字验证
  7. junit规则_JUnit规则
  8. 性能测试监控关键指标
  9. python经典书 豆瓣_入门,,豆瓣高分推荐的Python书籍
  10. rocketmq概念
  11. 开关电源设计入门到精通系列--序
  12. 常见端口入侵方法剖析
  13. 众里寻他千百度,蓦然回首,那人却在灯火阑珊处
  14. 计算机开不了机怎么用u盘解决,电脑开不了机怎么重装系统实测操作
  15. 【行研报告】2021年Q3小红书美妆行业营销报告—附下载链接
  16. RV32I基础整数指令集
  17. 寻址方法有哪些-七种数据寻址-三种内存寻址
  18. 几幅图教你区分数字地、模拟地、电源地、单点接地
  19. 基于Kinect体感器控制的机械臂项目记录
  20. linux中文输入法 2017,ubuntu 16.04 下安装并切换搜狗中文输入法

热门文章

  1. 非科班,进入美团做推荐算法是怎样的体验
  2. 计算机代码,名词解释和作用,还有我们要高高飞起来喔!
  3. vue3中使用jszip压缩文件
  4. python统计分析pdf下载_Python金融大数据分析PDF高清文档下载
  5. ubantu 添加防火墙策略_linux - 如何在Ubuntu上设置简单的防火墙? - Ubuntu问答
  6. 利用开源古诗词数据集做诗词查询器,给孩子语文作业做辅助
  7. xshell 安装JDK 步骤
  8. 如何获取全国各省市区的地理区域位置(地图-JSON-点位-行政区域)
  9. 对DllRegisterServer调用失败,错误代码为80004005
  10. apache 基本vhost配置