CentOS 服务器环境搭建(包括mysql5.7+jdk1.8+maven3.6+git+docker+docker-compose+jenkins)

    xiaoxiao2022-07-13  152

    CentOS 服务器环境搭建 (包括mysql5.7+jdk1.8+maven3.6+git+docker+docker-compose+jenkins) tomcat部署项目的时候没用到先不装了 后续添加negix和tomcat

    一、 安装mysql5.7

    1. 配置 yum 源

    去 MySQL 官网下载 YUM 的 RPM 安装包,http://dev.mysql.com/downloads/repo/yum/

    下载 mysql 源安装包

    $ curl -LO http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm

    安装 mysql 源

    $ sudo yum localinstall mysql57-community-release-el7-11.noarch.rpm

    检查 yum 源是否安装成功

    $ sudo yum repolist enabled | grep "mysql.*-community.*" mysql-connectors-community MySQL Connectors Community 21 mysql-tools-community MySQL Tools Community 38 mysql57-community MySQL 5.7 Community Server 130

    如上所示,找到了 mysql 的安装包

    2. 安装

    $ sudo yum install mysql-community-server

    3. 启动

    安装服务

    $ sudo systemctl enable mysqld

    启动服务

    $ sudo systemctl start mysqld

    查看服务状态

    $ sudo systemctl status mysqld

    4. 修改 root 默认密码

    MySQL 5.7 启动后,在 /var/log/mysqld.log 文件中给 root 生成了一个默认密码。通过下面的方式找到 root 默认密码,然后登录 mysql 进行修改:

    $ grep 'temporary password' /var/log/mysqld.log $ root@localhost: **********

    登录 MySQL 并修改密码

    $ mysql -u root -p Enter password: mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass4!';

    **ps: **默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于 8 位。

    5. 修改密码检查策略

    这样的密码太难记,接下来修改密码检查策略:

    首先关闭mysql服务

    service mysqld stop

    然后打开mysql 配置文件,在/etc/my.cnf文件中加入下面两句。

    # 修改密码强度,添加如下键值对, 0=LOW, 1=MEDIUM, 2=STRONG validate_password_policy=0 # 禁用密码校验策略 validate_password = off

    保存退出,并重启mysql服务:

    service mysqld restart

    登录mysql并修改为简单的密码

    $ mysql -u root -p Enter password: mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

    6. 允许远程连接

    MySQL 默认只允许 root 帐户在本地登录,如果要在其它机器上连接 MySQL,必须修改 root 允许远程连接,或者添加一个允许远程连接的帐户,为了安全起见,本例添加一个新的帐户:

    mysql> SET PASSWORD = PASSWORD('password'); mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; mysql> flush privileges;

    二、安装jdk

    1. jdk 下载

    下载地址: http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.tar.gz

    进入home 目录下:

    [root@centos home]# wget http://download.oracle.com/otn-pub/java/jdk/8u181-b13/96a7b8442fe848ef90c96a2fad6ed6d1/jdk-8u181-linux-x64.tar.gz

    2. 解压文件

    [root@centos home]# tar -zxvf jdk-8u181-linux-x64.tar.gz

    可以看到home目录下多出一个jdk1.8.0_181文件

    现在可以删除压缩包了

    [root@centos home]# rm jdk-8u181-linux-x64.tar.gz

    3. 配置环境变量

    打开/etc/profile 文件末尾添加:

    # set jdk Environmental variable export JAVA_HOME=/home/jdk1.8.0_181 export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

    保存文件并执行

    source /etc/profile

    测试安装结果

    [root@centos home]# java -version java version "1.8.0_181" Java(TM) SE Runtime Environment (build 1.8.0_181-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

    三、 maven 安装

    1. maven 下载

    下载地址: http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz

    进入home 目录下:

    [root@centos home]# wget http://mirrors.tuna.tsinghua.edu.cn/apache/maven/maven-3/3.6.1/binaries/apache-maven-3.6.1-bin.tar.gz

    2. 解压文件

    [root@centos home]# tar -zxvf apache-maven-3.6.1-bin.tar.gz

    可以看到home目录下多出一个apache-maven-3.6.1文件

    删除压缩包

    [root@centos home]# rm apache-maven-3.6.1-bin.tar.gz

    3. 配置环境变量

    打开/etc/profile 文件末尾添加

    # set maven Environmental variable export MAVEN_HOME=/home/maven-3.3.9 export PATH=${PATH}:${MAVEN_HOME}/bin

    测试安装结果

    [root@centos home]# mvn -v Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00) Maven home: /home/maven-3.3.9 Java version: 1.8.0_181, vendor: Oracle Corporation Java home: /home/jdk1.8.0_181/jre Default locale: en_US, platform encoding: UTF-8 OS name: "linux", version: "3.10.0-957.el7.x86_64", arch: "amd64", family: "unix"

    四、git 安装

    执行命令

    yum install git

    五、docker 安装

    安装最新的docker:

    $ curl -fsSL get.docker.com -o get-docker.sh $ sudo sh get-docker.sh (或者使用: $ curl -sSL https://get.docker.com/ | sh )

    启动docker

    $ service docker start

    确认Docker成功最新的docker:

    $ sudo docker run hello-world

    六、docker-compose 安装

    1.从github上下载docker-compose二进制文件安装

    下载最新版的docker-compose文件

    $ sudo curl -L https://github.com/docker/compose/releases/download/1.16.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose

    添加可执行权限

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

    测试安装结果

    $ docker-compose --version docker-compose version 1.16.1, build 1719ceb

    2.pip安装

    $ sudo pip install docker-compose

    #如出现以下情况

    [root@izwz91quxhnlk9mqhy9p75z run]# docker-compose version /usr/lib/python2.7/site-packages/requests/init.py:80: RequestsDependencyWarning: urllib3 (1.22) or chardet (2.2.1) doesn’t match a supported version! RequestsDependencyWarning) docker-compose version 1.23.1, build b02f130 docker-py version: 3.5.1 CPython version: 2.7.5 OpenSSL version: OpenSSL 1.0.1e-fips 11 Feb 2013

    原因:python库中urllib3 (1.22) or chardet (2.2.1) 的版本不兼容

    解决如下:

    $ pip uninstall urllib3 $ pip uninstall chardet $ pip install requests

    七、jenkins 安装

    1. 安装JDK

    yum install -y java

    2. 安装jenkins

    添加Jenkins库到yum库,Jenkins将从这里下载安装。

    $ wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins-ci.org/redhat/jenkins.repo $ pm --import https://jenkins-ci.org/redhat/jenkins-ci.org.key $ yum install -y jenkins

    如果不能安装就到官网下载jenkis的rmp包,官网地址(http://pkg.jenkins-ci.org/redhat-stable/)

    wget http://pkg.jenkins-ci.org/redhat-stable/jenkins-2.7.3-1.1.noarch.rpm rpm -ivh jenkins-2.7.3-1.1.noarch.rpm

    配置jenkis的端口

    vim /etc/sysconfig/jenkins

    找到修改端口号:

    #此端口不冲突可以不修改 JENKINS_PORT="8080"

    3. 修改jenkins用户权限

    部署项目时,Jenkins提示文件操作权限异常

    Building in workspace /var/lib/jenkins/workspace/facade java.nio.file.AccessDeniedException: /home/project/privateblog at sun.nio.fs.UnixException.translateToIOException(UnixException.java:84) at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102) at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107) at sun.nio.fs.UnixFileSystemProvider.createDirectory(UnixFileSystemProvider.java:384) at java.nio.file.Files.createDirectory(Files.java:674) at java.nio.file.Files.createAndCheckIsDirectory(Files.java:781) at java.nio.file.Files.createDirectories(Files.java:767) at hudson.FilePath.mkdirs(FilePath.java:3229) at hudson.FilePath.access$1300(FilePath.java:210) at hudson.FilePath$Mkdirs.invoke(FilePath.java:1251) at hudson.FilePath$Mkdirs.invoke(FilePath.java:1247) at hudson.FilePath.act(FilePath.java:1075) at hudson.FilePath.act(FilePath.java:1058) at hudson.FilePath.mkdirs(FilePath.java:1243) at hudson.plugins.git.GitSCM.createClient(GitSCM.java:811) at hudson.plugins.git.GitSCM.checkout(GitSCM.java:1186) at hudson.scm.SCM.checkout(SCM.java:504) at hudson.model.AbstractProject.checkout(AbstractProject.java:1208) at hudson.model.AbstractBuild$AbstractBuildExecution.defaultCheckout(AbstractBuild.java:574) at jenkins.scm.SCMCheckoutStrategy.checkout(SCMCheckoutStrategy.java:86) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499) at hudson.model.Run.execute(Run.java:1816) at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:43) at hudson.model.ResourceController.execute(ResourceController.java:97) at hudson.model.Executor.run(Executor.java:429) Finished: FAILURE

    Jenkins默认以jenkins用户运行,jenkins在删除文件、创建文件、覆盖文件可能发送没有权限的问题。

    将Jenkins账户分别加入到root组中

    gpasswd -a jenkins root

    修改/etc/sysconfig/jenkins文件

    JENKINS_USER="root"

    重启jenkins 服务项目部署成功

    最新回复(0)