美文网首页
docker 安装 centos7 搭建 java 环境

docker 安装 centos7 搭建 java 环境

作者: 吉他手_c156 | 来源:发表于2020-08-31 17:37 被阅读0次

    拉取 centos7 镜像

    docker pull centos:7
    
    image.png

    创建守护式容器

    docker run -di --name=mycentos centos:7
    
    image.png

    进入容器

    docker exec -it mycentos /bin/bash
    
    • 先安装wget命令
    yum -y install wget
    
    • 修改 yum 源为阿里 yum 源
    1. 进入 yum 目录
    cd /etc/yum.repos.d/
    
    1. 保存原有 yum 源
    mv CentOS-Base.repo CentOS-Base.repo.bak
    
    1. 下载阿里云 yum 源
    wget http://mirrors.aliyun.com/repo/Centos-7.repo
    
    1. 更新 yum 源
    yum clean all
    
    yum makecache
    
    yum update
    
    • 如果 ifconfig 命令不存在


      image.png
    • 安装 ifconfig
    yum -y install net-tools
    

    安装完毕在使用 ifconfig 就可以查看到 ip 了


    image.png
    • 使用 yum 安装 jdk
    1. 执行命令yum -y list java*查看可安装java版本
    yum -y list java*
    
    image.png
    1. 选择一个java版本进行安装,这里我安装java1.8
    yum install -y java-1.8.0-openjdk.x86_64
    
    1. 等待执行完成,执行 java -version 查看 jdk 版本
    java -version
    
    image.png
    1. jdk 被安装到了 /usr/lib/jvm 目录下
      进入 /usr/lib/jvm 目录查看
    cd /usr/lib/jvm
    
    image.png
    • 卸载 jdk
    1. 查询是否安装 jdk
      • 执行命令 rpm -qa | grep java 或者 rpm -qa | grep jdk 或者 rpm -qa | grep gcj


        image.png
      • 执行命令卸载 rpm -e --nodeps java-1.8.0-openjdk-1.8.0.262.b10-0.el7_8.x86_64
      • 执行命令下载 rpm -e --nodeps java-1.8.0-openjdk-headless-1.8.0.262.b10-0.el7_8.x86_64
      • 执行查看命令 java -version,可以查看到已经卸载


        image.png
    tar -xvf jdk-8u261-x64.tar.gz
    
    image.png
    • 安装 rzsz 命令 (可以上传已经下载好的压缩包或者文件)
      执行命令
    yum -y install lrzsz
    

    下载好后执行 rz + 回车 命令,弹出对话框,可以上传本地的文件


    image.png
    image.png
    • 配置jdk 环境
      1. 执行命令 vi /etc/profile
      2. 在末尾添加(对应上自己的jdk路径)
            #set java environment
        JAVA_HOME=/usr/local/src/java/jdk1.7.0_71
        CLASSPATH=.:$JAVA_HOME/lib.tools.jar
        PATH=$JAVA_HOME/bin:$PATH
        export JAVA_HOME CLASSPATH PATH
    
    
    image.png
    1. 保存退出
    2. 执行命令 source /etc/profile 使更改的配置立即生效
    3. 执行 java -version 命令可以查看到 jdk 信息


      image.png
    • 如果 wget 下载 太慢,可以试一下 mwget
      wget相对于浏览器来说,速度会比较偏慢,特别是国外的网站,mwget是一个多线程下载应用,可以明显提高下载速度。
      执行命令,下载,解压,安装
    wget http://jaist.dl.sourceforge.net/project/kmphpfm/mwget/0.1/mwget_0.1.0.orig.tar.bz2
    yum install bzip2 gcc-c++ openssl-devel intltool -y
    bzip2 -d mwget_0.1.0.orig.tar.bz2
    tar -xvf mwget_0.1.0.orig.tar 
    cd mwget_0.1.0.orig
    ./configure 
    make
    make install 
    
    • 如果没有 make 命令
      安装
    yum -y install gcc automake autoconf libtool make
    

    安装 g++

    yum install gcc gcc-c++
    
    • 下载 tomcat 使用 mwget
    mwget https://archive.apache.org/dist/tomcat/tomcat-8/v8.0.53/bin/apache-tomcat-8.0.53.tar.gz
    
    image.png

    可以看到速度明显加快了 ,是多线程下载的

    • 解压 tomcat
    tar -xvf apache-tomcat-8.0.53.tar.gz
    
    • 如果没有安装 firewalld 防火墙命令,执行安装命令
    yum install firewalld
    
    • 启动防火墙,如果出先不能加载
    [root@394a598ad9fb usr]# systemctl start firewalld
    Failed to get D-Bus connection: Operation not permitted
    
    • 解决方法,重新构建容器,使用命令 docker run -di --name=mycentos2 --privileged=true centos:7 /usr/sbin/init,但是我们之前做的工作全白费了,不要着急,我们打包之前的 centos 镜像,并生成新的镜像
    root@hupan-virtual-machine:~# docker commit mycentos mycentos2
    
    image.png

    重新构建容器并映射两个端口

    docker run -di --name=mycentos2 -p 2222:22 -p 9090:8080 --privileged=true centos:7 /usr/sbin/init 
    

    2222 端口用做远程访问,9090 用户访问容器中的 tomcat

    进入容器,这时候就可以启动防火墙了

    docker exec -it mycentos2 /bin/bash
    
    • firewalld的基本用法
      1. 启动: systemctl start firewalld
      2. 关闭: systemctl stop firewalld
      3. 查看状态: systemctl status firewalld
      4. 开机禁用 : systemctl disable firewalld
      5. 开机启用 : systemctl enable firewalld
      6. 查看开放的端口:firewall-cmd --list-ports
      7. 添加端口:firewall-cmd --add-port=8080/tcp --permanent (–permanent永久生效,没有此参数重启后失效)
      8. 不中断服务的重新加载:firewall-cmd --reload

    进入tomcat bin 目录

    cd /usr/local/java/apache-tomcat-8.0.53/bin/
    

    启动 tomcat

    ./startup.sh
    

    查看启动状态

    ps -ef | grep tomcat
    
    image.png

    成功启动

    开发 mycentos2 容器中的 22 端口 和 8080 端口

    firewall-cmd --add-port=22/tcp --permanent
    firewall-cmd --add-port=8080/tcp --permanent
    

    刷新防火墙

    firewall-cmd --reload
    

    访问容器内的 tomcat 192.168.245.131 为宿主机 ip
    http://192.168.245.131:9090/

    image.png

    已经成功访问到了容器内的 tocmat

    相关文章

      网友评论

          本文标题:docker 安装 centos7 搭建 java 环境

          本文链接:https://www.haomeiwen.com/subject/ibsusktx.html