Linux防火墙Firewall和Iptables的使用
Linux 中有两种防火墙软件,ConterOS7.0以上使用的是 firewall,ConterOS7.0以下使用的是 iptables,本文将分别介绍两种防火墙软件的使用。
#Firewall
开启防火墙:
1systemctl start firewalld
关闭防火墙:
1systemctl stop firewalld
查看防火墙状态:
1systemctl status firewalld
设置开机启动:
1systemctl enable firewalld
禁用开机启动:
1systemctl disable firewalld
重启防火墙:
1firewall-cmd --reload
开放端口(修改后需要重启防火墙方可生效):
1firewall-cmd --zone=public --add-port=8080/tcp --permanent
查看开放的端口:
1firewall-cmd --list-ports
关闭端口:
1firewall-cmd --zone=public --remove-port ...
Github标星19K+Star,10分钟自建对象存储服务!
对象存储服务可以用来存储各类文件,mall 项目中的图片存储采用的是 OSS,今天我们来讲下如何自己搭建一个对象存储服务来存储图片。
#MinIO简介MinIO 是一款基于Go语言的高性能对象存储服务,在Github上已有19K+Star。它采用了Apache License v2.0开源协议,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等。 本文将使用 MinIO 来自建一个对象存储服务用于存储图片。
#安装及部署
MinIO的安装方式有很多,这里我们使用它在Docker环境下的安装方式。
下载MinIO的Docker镜像:
1docker pull minio/minio
在Docker容器中运行MinIO,这里我们将MiniIO的数据和配置文件夹挂在到宿主机上:
1234docker run -p 9090:9000 --name minio \ -v /mydata/minio/data:/data \ -v /mydata/minio/config:/root/.minio \ -d minio/mi ...
Elasticsearch快速入门,掌握这些刚刚好!
记得刚接触 Elasticsearch 的时候,没找啥资料,直接看了遍 Elasticsearch 的中文官方文档,中文文档很久没更新了,一直都是2.3的版本。最近又重新看了遍6.0的官方文档,由于官方文档介绍的内容比较多,每次看都很费力,所以这次整理了其中最常用部分,写下了这篇入门教程,希望对大家有所帮助。
#简介Elasticsearch是一个基于Lucene的搜索服务器。它提供了一个分布式的全文搜索引擎,基于restful web接口。Elasticsearch是用Java语言开发的,基于Apache协议的开源项目,是目前最受欢迎的企业搜索引擎。Elasticsearch广泛运用于云计算中,能够达到实时搜索,具有稳定,可靠,快速的特点。
#安装#Windows下的安装#Elasticsearch
下载Elasticsearch 6.2.2的zip包,并解压到指定目录,下载地址:https://www.elastic.co/cn/downloads/past-releases/elasticsearch-6-2-2
安装中文分词插件,在elasticsearch-6.2. ...
Docker服务开放了这个端口,服务器分分钟变肉机!
之前有很多朋友提过,当使用 docker-maven-plugin 打包 SpringBoot 应用的 Docker 镜像时,服务器需要开放 2375 端口。由于开放了端口没有做任何安全保护,会引起安全漏洞,被人入侵、挖矿、CPU 飙升这些情况都有发生,今天我们来聊聊如何解决这个问题。
#问题产生的原因首先我们要明白问题产生的原因,才能更好地解决问题!
Docker为了实现集群管理,提供了远程管理的端口。Docker Daemon作为守护进程运行在后台,可以执行发送到管理端口上的Docker命令。
当我们修改docker.service文件,修改启动命令,加入-H tcp://0.0.0.0:2375时,就会开放2375端口,且没有任何加密和认证过程,这种方式一般用在内网测试环境。如果你的服务器部署在公网上,任何知道你IP的人,都可以管理这台主机上的容器和镜像,想想就觉得可怕。
#解决思路开放远程管理端口后,没有做任何安全保护导致了这个问题。我们只要使用安全传输层协议(TLS)进行传输并使用CA认证即可。
#制作证书及秘钥
我们需要使用OpenSSL制作CA机构证书、服务端证书和客 ...
我常用的自动化部署技巧,贼好用,推荐给大家!
SpringBoot+Jenkins 自动化部署技巧,远程部署同样适用,附通用自动化脚本!本文将从半自动化部署讲起,到自动化部署,讲解一套生产环境切实可用的自动化部署方案!
#半自动化部署
之前写过的SpringBoot应用打包Docker镜像都是通过Maven插件来实现的,由于远程服务器需要开发2375端口,存在一定的安全隐患。这次介绍另一种方法,使用DockerFile+Jar+自动化脚本的形式来部署。由于需要一定的手动操作,我把它称之为半自动化部署。
#项目打包
这次我们不使用Docker的Maven插件来打包,先在pom.xml中注释掉它;
然后使用Maven的package命令直接将应用打成Jar包;
此时在target目录下就会生成一个Jar包,我们打包Docker镜像的时候会用到它。
#DockerFile主要是定义了如何将Jar包打包成Docker镜像,对DockerFile不了解的朋友可以看下《使用Dockerfile为SpringBoot应用构建Docker镜像》open in new window,具体内容如下。
12345678910# 该 ...
使用Maven插件为SpringBoot应用构建Docker镜像
本文主要介绍如何使用 Maven 插件将 SpringBoot 应用打包为 Docker 镜像,并上传到私有镜像仓库 Docker Registry 的过程。
#Docker Registry#Docker Registry 2.0搭建1docker run -d -p 5000:5000 --restart=always --name registry2 registry:2
如果遇到镜像下载不下来的情况,需要修改 /etc/docker/daemon.json 文件并添加上 registry-mirrors 键值,然后重启docker服务:
123{ "registry-mirrors": ["https://registry.docker-cn.com"]}
#Docker开启远程API#用vim编辑器修改docker.service文件1vi /usr/lib/systemd/system/docker.service
需要修改的部分:
1ExecStart=/usr/bin/ ...
使用Jenkins一键打包部署SpringBoot应用,就是这么6!
任何简单操作的背后,都有一套相当复杂的机制。本文将以 SpringBoot 应用的在 Docker 环境下的打包部署为例,详细讲解如何使用 Jenkins 一键打包部署 SpringBoot 应用。
#Jenkins简介Jenkins是开源CI&CD软件领导者,提供超过1000个插件来支持构建、部署、自动化,满足任何项目的需要。我们可以用Jenkins来构建和部署我们的项目,比如说从我们的代码仓库获取代码,然后将我们的代码打包成可执行的文件,之后通过远程的ssh工具执行脚本来运行我们的项目。
#Jenkins的安装及配置#Docker环境下的安装
下载Jenkins的Docker镜像:
1docker pull jenkins/jenkins:lts
在Docker容器中运行Jenkins:
1234docker run -p 8080:8080 -p 50000:5000 --name jenkins \-u root \-v /mydata/jenkins_home:/var/jenkins_home \-d jenkins/jenkins:lts
#Jenk ...
使用Jenkins一键打包部署前端应用,就是这么6!
上一次我们讲到了使用 Jenkins 一键打包部署 SpringBoot 应用,这一次我们来讲下如何一键打包部署前端应用,以 Vue 前端应用为例,这里我们使用 mall-admin-web 中的代码来进行演示。
#学前准备
学习本文需要一些Jenkins和Nginx的知识,对这些不熟悉的小伙伴可以参考以下文章。
使用Jenkins一键打包部署SpringBoot应用,就是这么6!
Nginx的这些妙用,你肯定有不知道的!
#Jenkins中的自动化部署
Vue前端应用的打包需要依赖NodeJS插件,所以我们先安装并配置该插件,然后创建任务来打包部署。
#安装NodeJS插件
在系统设置->插件管理中选择安装插件;
搜索NodeJS插件并进行安装;
#配置NodeJS插件
在系统设置->全局工具配置中进行插件配置;
选择新增NodeJS,配置好版本号以后,点击保存即可完成设置;
#创建任务
我们需要创建一个任务来打包部署我们的前端应用,这里以我的mall-admin-web项目为例。
任务执行流程如下:
构建一个自由风格的软件项目: ...
使用Dockerfile为SpringBoot应用构建Docker镜像
上次写过一篇使用Maven插件构建Docker镜像 ,讲述了通过 docker-maven-plugin 来构建 docker 镜像的方式,此种方式需要依赖自建的 Registry 镜像仓库。本文将讲述另一种方式,使用 Dockerfile 来构建 docker 镜像,此种方式不需要依赖自建的镜像仓库,只需要应用的 jar 包和一个 Dockerfile 文件即可。
#Dockerfile常用指令#ADD用于复制文件,格式:
1ADD <src> <dest>
示例:
12# 将当前目录下的mall-tiny-docker-file.jar包复制到docker容器的/目录下ADD mall-tiny-docker-file.jar /mall-tiny-docker-file.jar
#ENTRYPOINT指定docker容器启动时执行的命令,格式:
1ENTRYPOINT ["executable", "param1","param2"...]
示例:
12# 指定docker容器启动时运行 ...
使用Docker Compose部署SpringBoot应用
Docker Compose 是一个用于定义和运行多个 docker 容器应用的工具。使用 Compose 你可以用 YAML 文件来配置你的应用服务,然后使用一个命令,你就可以部署你配置的所有服务了。
#安装#下载Docker Compose1curl -L https://get.daocloud.io/docker/compose/releases/download/1.24.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
#修改该文件的权限为可执行1chmod +x /usr/local/bin/docker-compose
#查看是否已经安装成功1docker-compose --version
#使用Docker Compose的步骤
使用Dockerfile定义应用程序环境,一般需要修改初始镜像行为时才需要使用;
使用docker-compose.yml定义需要部署的应用程序服务,以便执行脚本一次性部署;
使用docker-compose up命令将所有应用服务 ...
