昨天我们大致看了下Docker的基础操作,今天就顺势用Docker安装一下mysql吧,还是相当简单的(当然是相对于不借助docker安装来说的,手动滑稽 - -)

生成镜像

第一种:我们用人家编译好的镜像安装吧

  • 首先在Docker里面搜索一下mysql


    可以看到搜索出来了N多的mysql镜像,你可以选择你想要的镜像进行安装,不过我就给你用官方的最新版安装吧

  • 下载mysql

    docker pull mysql
    
    注:如果需要特定版本,你可以在下载的时候加tag
    eg:docker pull mysql:5.7

    具体有哪些版本,可以上 Dockerhub > mysql 查看


  • 查看我们下载的mysql镜像

    docker images | grep mysql
    

第二种:通过Dockerfile构建

  • 创建目录mysql,用来存放mysql的相关东西

    mkdir -p ~/mysql
    
  • 然后进入mysql目录,创建Dockerfile文件

    cd ~/mysql
    vim Dockerfile 
    然后复制Dockerfile的内容进去,保存
    

    Dockerfile的内容可以在https://github.com/docker-library/mysql找到

  • 基于Dockerfile创建镜像

    docker build -t mysql .
    
  • 查看创建的镜像

    docker images | grep mysql
    

启动mysql

docker run --name mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=test1234 -d image-name/image-id

命令说明

–name mysql 设置容器别名

-p 3306:3306 将容器的3306端口映射到主机的3306端口,不然无法访问

-e MYSQL_ROOT_PASSWORD=test1234 初始化root用户的密码

-d 后台运行容器

image-name/image-id mysql镜像名称或者镜像id

进入容器

docker exec -it mysql bash

登录mysql

mysql -u root -p

ALTER USER 'root'@'localhost' IDENTIFIED BY test1234';

添加远程登录用户(使可以远程连接,不需要可以省略)

CREATE USER 'test'@'%' IDENTIFIED WITH mysql_native_password BY 'test1234';

GRANT ALL PRIVILEGES ON . TO 'test'@'%';

大概就是这么多啦,emmm.

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐