zoukankan      html  css  js  c++  java
  • Docker应用部署实录(包含完善Docker安装步骤)

    Docker应用部署实录(包含完善Docker安装步骤)

    前言

    首先说一下这篇文章的来源。我之前接手的一个IOT项目,需要安装多个中控服务器。中控服务器需要安装RabbitMQ,Mysql,多个服务,这些部署,部署人员不怎么会(毕竟是硬件兼职的),只能让我给整一个简单一些方案。我当时就想到了容器化部署,然后整一个容器集群(虽然我离开时还没有整容器集群)。

    使用Docker部署的好处,就是大大降低部署复杂度。如RabbitMQ的原生部署,需要安装erlang语言,再编译,安装,还容易出问题。docker只需要一条指令(甚至为了简化操作,我将账号密码的初始化操作,也放在了这条指令中,并开启了自启动等)。

    所以,通过Docker,实现了较为傻瓜式的部署,并且方案实现简单,所以值得参考。尤其是一些中小型项目,有类似需求的小伙伴更值得推荐,尤其是命令中一些参数。

    并且该篇博客,给出了完善的Docker安装步骤。

    最后,就当是怀念一下当时刚刚接触容器的我。嘿嘿。

    一,安装Docker:

    1. 要求:CentOS7系统

    2. 查看系统内核:

    uname -r
    

    在这里插入图片描述

    3. 利用root权限,确保yum包更新到最新:

    sudo yum update
    

    在这里插入图片描述

    4. [可选]卸载旧版本:

    sudo yum remove docker docker-common docker-selinux docker-engine
    

    5. 安装需要的软件包:

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

    在这里插入图片描述

    6. 设置yum源:

    sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    

    在这里插入图片描述

    7. 查看所有仓库所有docker版本,并选择安装:

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

    在这里插入图片描述

    8. 安装Docker:

    sudo yum install docker-ce
    

    在这里插入图片描述
    在这里插入图片描述

    9. 启动并加入开机启动:

    systemctl start docker
    

    在这里插入图片描述

    sudo systemctl enable docker
    

    在这里插入图片描述

    10. 验证是否安装成功:

    docker version
    

    在这里插入图片描述
    在这里插入图片描述

    二, 安装RabbitMQ:

    1. 安装RabbitMQ(指令确保重启自动启动,修改默认用户名与密码):

    docker run -d --hostname my-rabbit -d --name rabbit -e RABBITMQ_DEFAULT_USER=admin -e RABBITMQ_DEFAULT_PASS=123456 -p 5672:5672 -p 15672:15672 rabbitmq:3.7-management
    

    在这里插入图片描述

    2. 验证安装成功:

    在这里插入图片描述
    在这里插入图片描述

    三, 安装Redis:

    1. 安装(指令确保重启自动启动,无需密码,无需持久化):

    docker run --name my-redis -d --restart=unless-stopped -p 6379:6379 -d redis:3.2 redis-server
    

    在这里插入图片描述

    2. 验证安装成功:

    在这里插入图片描述
    在这里插入图片描述

    四, 安装Mysql:

    1. 安装(指令确保重启自动启动,设置root密码为123456,新建用户renewable,密码为123。提升容器内权限):

    docker run --name my-mysql -d --restart=unless-stopped --privileged=true -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -e MYSQL_USER=”renewable” -e MYSQL_PASSWORD=”123” -d mysql:5.6
    

    在这里插入图片描述

    2. 安装成功验证:

    服务器校验:

    在这里插入图片描述

    root用户连接校验:

    在这里插入图片描述

    自定义用户连接校验:

    在这里插入图片描述

    3. 提示:

    上面连接不成功的问题也可以添加镜像参数

    --default-authentication-plugin=mysql_native_password
    

    4. 注意:

    建议原生安装,如果采用容器部署,请严格遵守安装过程。否则,异常修复会很麻烦。

    五, 安装JDK:

    经过考虑,暂不考虑容器部署JDK。
    之后服务容器化后,可以考虑容器部署JDK。

    六, 容器部署外的安装:

    1. JDK安装

    2. Mysql数据结构导入

    3. (rabbitmq的路由等,由程序自动实现)

    4. (redis的数据结构等,由程序自动实现)

    5. Nginx部署:

    (由于是centos7,故可以yum安装)
    (由于进行了repo处理,所以可以直接安装nginx)
    (否则,需要安装nginx源)

    yum install nginx
    

    在这里插入图片描述
    在这里插入图片描述

    启动及开启自启动:

    systemctl start nginx
    systemctl enable nginx
    

    在这里插入图片描述

    验证:

    在这里插入图片描述

    Nginx的默认路径:

    1. Nginx配置路径:/etc/nginx/
    2. PID目录:/var/run/nginx.pid
    3. 错误日志:/var/log/nginx/error.log
    4. 访问日志:/var/log/nginx/access.log
    5. 默认站点目录:/usr/share/nginx/html

    七. 应用jar包部署:

    这个部分是不可以公开的。各位小伙伴,根据自己的需要,进行处理吧。

    如果有什么疑问,可以私信或@我。

    愿与诸君共进步。

  • 相关阅读:
    详细解读 DispatcherServlet 初始化过程(带时序图)
    从源码分析ContextLoaderListener的加载过程(带时序图)
    SpringMVC自带Cron定时器Demo及常见问题
    win7系统用sqlyog连接不上docker启动的mysql数据库
    使用maven-Jetty9-plugin插件运行第一个Servlet
    Maven项目+内嵌tomcat+Servlet
    Maven依赖的scope属性(附官方文档)
    使用 Intellij IDEA 新建一个 Servlet 项目
    在 Tomcat 上部署你的第一个 Servlet 应用
    关于JAVA的垃圾回收机制
  • 原文地址:https://www.cnblogs.com/Tiancheng-Duan/p/12287247.html
Copyright © 2011-2022 走看看