部署流程-docker-solr

部署流程总结

目标:

  • 掌握docker相关知识点
  • 通过提供好的docker文件和shell脚本执行安装docker
  • 掌握容器管理
  • 掌握任务调度中心的操作,抽取数据到solr
  • 问题归纳

1 Docker

1.1 什么是Docker

Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目。它基于 Google 公司推出的 Go 语言实现。 项目后来加入了 Linux 基金会,遵从了 Apache 2.0 协议,项目代码在 GitHub 上进行维护。

在这里插入图片描述

Docker 项目的目标是实现轻量级的操作系统虚拟化解决方案。 Docker 的基础是 Linux 容器(LXC)等技术。

在 LXC 的基础上 Docker 进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简便。用户操作 Docker 的容器就像操作一个快速轻量级的虚拟机一样简单。

为什么选择Docker?

(1)上手快。

(2)职责的逻辑分类

(3)快速高效的开发生命周期

(4)鼓励使用面向服务的架构

1.2Docker的镜像与容器

  • 镜像是构建Docker的基石。我们可以基于镜像来运行自己的容器。镜像是基于联合文件系统的一种层式结构,由一系列指令一步一步构建出来。

  • 也可以将镜像当作容器的“源代码”。镜像体积很小,非常“便携”,易于分享、存储和更新。

  • Docker可以帮助你构建和部署容器,你只需要把自己的应用程序或者服务打包放进容器即可。容器是基于镜像启动起来的,容器中可以运行一个或多个进程。我们可以认为,镜像是Docker生命周期中的构建或者打包阶段,而容器则是启动或者执行阶段。 容器基于镜像启动,一旦容器启动完成后,我们就可以登录到容器中安装自己需要的软件或者服务。

  • 所以Docker容器就是:

    一个镜像格式;

    一些列标准操作;

    一个执行环境。

1.3 Docker常用指令

启动和停止docker:

systemctl start docker     systemctl stop docker

镜像:

1.docker images  2.docker pull 注册中心地址/镜像仓库名称:镜像版本   3.docker rmi 镜像ID(或镜像名:tag)

查看容器

查看正在运行的容器:docker ps         
查看正在运行的容器:docker ps –a

创建容器

docker run -it --name 容器名称 镜像名称:标签 /bin/bash

进入容器:docker exec -it 775c7c9ee1e1 /bin/bash

将文件拷贝到容器内

docker cp 需要拷贝的文件或目录 容器名称:容器目录

查看日志

docker logs -f 容器名称(或容器ID)

创建network

docker network create -d bridge my-net

创建容器时,连接一个network

docker run -it --rm --name mycentos --network=my-net centos:7 /bin/bash

容器保存为镜像

docker commit my-nginx mynginx_i   
#  my-nginx 容器名称, mynginx_i 自定义镜像名称

2 安装docker

2.1新建软连接ln –s /home /Docker

2.2下载docker.tar.gz 和install.sh

1.将docker.tar.gz和install.sh拷贝到/Docker目录下 
2.执行install.sh
install.sh 是脚本文件,通过sh命令运行sh xxx.sh。
执行install.sh将会进行执行一系列的命令,包括解压docker文件,配置Docker位置,启动docker,创建网桥,运行并启动各个容器。

3 容器管理

浏览器访问ip:9000 打开portainer

1.ip:192.168.200.129  端口:9000  已经配置端口映射
2.portainer容器已经在执行shell脚本的时候start
3.portainer是进行容器管理的,可以开启停止容器查看日志等等等

4 xxl_admin配置

1.浏览器打开ip:8080/xxl_job_admin
2.默认账号admin,密码123456
3.WEB端配置solr服务
4.WEB端配置cdr数据源
5.WEB端导入任务表
6.WEB端修改表字段配置
7.WEB端初始化抽取维度数据
8.WEB端生成solr配置文件
9.开始数据同步任务
注:详细见Data Sync平台部署手册

5 遇到的问题和提高

5.1 shell脚本没有书写过

5.2 job-exec 配置

修改yml文件中的数据源地址和job-admin地址并拷贝并到容器根目录下覆盖原配置
​例docker cp /application.yml job-exec:/application.yml

5.3 solr不太会用,里面的知识点不太熟悉

5.4数据库mysql,solr里面字段不清楚

5.5 微服务部署

  • 基于Dockerfile,Idea一键构建镜像部署

1.Idea安装Docker插件

2.配置连接远程Docker

3.开始建立连接

4.在项目根目录下添加Dockerfile

# 设置JAVA版本
FROM java:8-alpine
# 指定存储卷, 任何向/tmp写入的信息都不会记录到容器存储层
VOLUME /tmp
COPY /target/app.jar /app.jar
# 设置JVM运行参数, 这里限定下内存大小,减少开销
ENV JAVA_OPTS="\
-server \
-Xms256m \
-Xmx512m \
-XX:MetaspaceSize=256m \
-XX:MaxMetaspaceSize=512m"
# 入口点, 执行JAVA运行命令
ENTRYPOINT ["java", "-jar", "/app.jar"]

这里限定下内存大小,减少开销
ENV JAVA_OPTS="
-server
-Xms256m
-Xmx512m
-XX:MetaspaceSize=256m
-XX:MaxMetaspaceSize=512m"

入口点, 执行JAVA运行命令

ENTRYPOINT [“java”, “-jar”, “/app.jar”]






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值