• docker1-概述与centos7安装使用docker-tomcat-mysql


    Why use

    • 软件开发、测试、部署时,环境配置的繁杂与成本。
    • 传统虚拟机技术不够灵活以及巨大的资源消耗。

    windows安装centos虚拟机

    下载安装

    centos7镜像启动

    可参考:https://zhuanlan.zhihu.com/p/60408219

    • 新建虚拟机
      打开virtualbox, 点击“新建”,选择linux、other Linux64,按照默认配置下一步就好。
    • 启动虚拟机
      • 选择下载的镜像,install
      • 配置语言、时区、安装模式、网络和主机等,begin install,等待..设置root密码..reboot
    • 虚拟机网络设置
      • 连接方式选择桥接模式。
      • 界面名称根据宿主机网络选择,如果宿主机是网线则选择带PCIE的,无线则选择带wireless的。
      • 展开高级,勾上接入网线,保存配置。
      • 使用service network restart重启网络服务或者重启系统,使用ip addr查看IP地址是否与宿主机一个网段。
    • 使用SmarTTY/Xshell连接(ssh)虚拟机的centos
    • 环境准备到此 OK

    安装docker

    官方文档地址:https://docs.docker.com/install/linux/docker-ce/centos/
    直接选择yum安装:

    Most users set up Docker’s repositories and install from them, for ease of installation and upgrade tasks. This is the recommended approach.

    • SET UP THE REPOSITORY
    $ sudo yum install -y yum-utils 
      device-mapper-persistent-data 
      lvm2
      
    $ sudo yum-config-manager 
        --add-repo 
        https://download.docker.com/linux/centos/docker-ce.repo
    
    • INSTALL DOCKER ENGINE - COMMUNITY
    $ sudo yum install docker-ce docker-ce-cli containerd.io
    
    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": ["https://3a2181yn.mirror.aliyuncs.com"]
    }
    EOF
    sudo systemctl daemon-reload
    sudo systemctl restart docker
    
    • Run hello-world image $ sudo docker run hello-world
    • 开机启动docker $ systemctl enable docker
    • Stop Docker $ systemctl stop docker

    docker-tomcat

    • docker-hub查看官方tomcat镜像 (命令查看 docker search tomcat)
      https://hub.docker.com/_/tomcat?tab=description
    • 拉取镜像 docker pull tomcat
    • 查看镜像 docker images
    • 后台运行一个tomcat容器 docker run --name mytomcat -d -p 8888:8080 tomcat
      验证端口映射:docker宿主机ip:8888访问tomcat
    • 查看运行的容器 docker ps(-a 查看所有容器)
    • 停止容器 docker stop containerId/containerName
      停止所有容器 docker stop $(docker ps -a -q)
    • 容器再启动 docker start containerId/containerName(先docker ps -a查看)
    • 删除容器 docker rm containerId(需是Existed状态的容器)
    • 跑两个tomcat
    docker run --name mytomcat0 -d -p 8080:8080 tomcat
    docker run --name mytomcat1 -d -p 8081:8080 tomcat
    
    • 查看容器日志 docker logs containerId/containerName

    docker-mysql

    $ docker run -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=mysql123 -d mysql
    
    • 容器运行查看 docker ps|grep mysql
    • 容器日志查看 docker logs $(docker ps|grep mysql01|awk '{print $1}')
    • 进入容器内bash命令窗 docker exec -it mysql01 bash
    • Navicat连接mysql容器

    碰到的问题

    安装docker时出现Delta RPMs disabled..

    Delta RPMs disabled because /usr/bin/applydeltarpm not installed
    //解决
    yum provides '*/applydeltarpm'
    yum install -y deltarpm
    yum update
    //继续安装 sudo yum install docker-ce docker-ce-cli containerd.io
    

    mysql容器启动后,navcat连接出错Client does not support authentication protocol..

    进入容器bash,登录mysql执行用户处理SQL
    docker exec -it mysql01 bash
    mysql -u root -p
    mysql> ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'mysql123';
    mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'mysql123';
    mysql> SELECT plugin FROM mysql.user WHERE User = 'root';

  • 相关阅读:
    巡回赛 -- 简单的拓扑排序
    最简单的拓扑排序
    blockhouses
    部分和问题
    jfinal路由简单解析
    python mysql
    Gradle--ubuntu
    解决ssh登录后闲置时间过长而断开连接
    业界有很多MQ产品
    avalon---qunar ued
  • 原文地址:https://www.cnblogs.com/noodlerkun/p/11452499.html
Copyright © 2020-2023  润新知