您的位置:首页 > 运维架构 > Docker

从零使用docker简单部署一个javaweb项目与mysql数据库

2018-04-04 11:29 1536 查看
centos 7 安装docker:
  Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker 。使用  uname -r 查看CentOS内核
使用 root 权限登录 Centos。确保 yum 包更新到最新。    sudo yum update
卸载旧版本(如果安装过旧版本的话)     sudo yum remove docker  docker-common docker-selinux docker-engine
设置yum源    sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
可以查看所有仓库中所有docker版本,并选择特定版本安装    yum list docker-ce --showduplicates | sort -r
安装docker    sudo yum install docker-ce-XXX(版本号)
启动docker    systemctl start docker(service start docker)/关闭docker service stop docker
docker 部署一个简单的javaweb项目:    部署一个javaweb项目,我们需要两个镜像,tomcat,mysql
    1.切换到root账号,启动docker systemctl start docker

    2.下载tomcat镜像
        因为docker hub上下载网速慢,所有一般使用国内的代理网站,推荐使用网易蜂巢的镜像中心
        

    左上角为鲸鱼的图标,则表示为docker hub上官方镜像

    


复制上面的下载地址docker pull hub.c.163.com/library/tomcat:latest ,拉取镜像到本地
3.参照拉取tomcat镜像的方法,下载mysql镜像
4.启动mysql镜像:    因为docker容器,关闭,重启后,会清空容器里面的数据,所有我们用挂载的方式启动mysql,保存数据库数据
    
    先在centos主机上创建文件夹  /usr/mysql_data
    挂载启动mysql镜像:docker run --name fbmmysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123qwe -v /usr/mysql_data:/var/lib/mysql  -d hub.c.163.com/library/mysql
注:--name :给容器取一个别名为fbmmysql       -p :映射端口号,将mysql的端口号3306 映射为 3306
       -e MYSQL_ROOT_PASSWORD :  设置root密码为123qwe
       -v :使用/usr/mysql_data 挂载mysql数据文件,保存数据库数据
       -d : 后台运行容器,并返回容器ID;
     hub.c.163.com/library/mysql:镜像名称
    可使用docker images 查看所有镜像
    
    


使用docker ps 查看正在运行的docker容器:


5.在Windows主机上使用数据库图形化管理工具,连接测试mysql:    


这里的ip地址为vm中centos的ip地址,密码为启动mysql时,设置的密码
连接成功后,将所需要的数据库数据导入到mysql
6.使用Dockerfile构建自己的docker镜像修改web项目的数据库连接信息,将ip信息改为我们启动mysql容器时取的别名,改好,打成war包


    在centos中创建文件夹 /usr/fbm,在此文件夹下创建一个Dockerfile文件
    将war包上传到这个文件夹下面



    编辑Dockerfile文件 vi Dockerfile



    第一行from :设置基础镜像,即第二步下载的tomcat镜像
    第二行:将我们的war包拷贝到tomcat的webapps下面

7.使用docker build生成镜像:        docker build -t fbm:latest .
    注:-t 设置repository,tag



. : 运行当前文件夹下的Dockerfile文件
使用docker images查看生成的镜像    


8.启动fbm镜像:    docker run -d -p 8888:8080 --name fbm --link fbmmysql:fbmmysql b6b840a4d1f3    注:--link:tomcat容器与msyql容器简历连接,fbmmysql为启动mysql容器时取的别名,后一个fbmmysql为建立连接的连接名
            b6b840a4d1f3 为fbm镜像的image id

9.在Windows主机下输入地址,测试部署结果    

ip地址为vm下centos的ip,输入密码,测试数据库连接    


登录成功,部署完毕。注:tomcat启动时最好用挂载,方便查看日志文件
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: