美文网首页
Docker部署(二):MySQL数据库

Docker部署(二):MySQL数据库

作者: Dev_Mo | 来源:发表于2017-12-11 14:00 被阅读0次

    Docker 容器构建

    • 使用Dockerfile构建镜像
    • 使用官方提供的Docker镜像

    所谓Dockerfile

    Dockerfile是一种被Docker程序解释的脚本,Dockerfile由一条一条的指令组成,每条指令对应Linux下面的一条命令。Docker程序将这些Dockerfile指令翻译真正的Linux命令。Dockerfile有自己书写格式和支持的命令,Docker程序解决这些命令间的依赖关系,类似于Makefile。Docker程序将读取Dockerfile,根据指令生成定制的image。相比image这种黑盒子,Dockerfile这种显而易见的脚本更容易被使用者接受,它明确的表明image是怎么产生的。有了Dockerfile,当我们需要定制自己额外的需求时,只需在Dockerfile上添加或者修改指令,重新生成image即可,省去了敲命令的麻烦。

    不过这里只介绍Dockerfile构建容器的步骤,接下来的文章都是以第二种方式, 使用官方提供的Docker镜像来部署

    下载MySQL官方提供的Docker镜像

    $ docker pull mysql:tag
    

    :tag 是你想从官方拉取的版本(例如5.5, 5.6, 5.7 或者latest )。如果省略 tag 则拉取当前最新的版本, 即latest。

    可以使用以下的命令列出下载Docker镜像:

    $ docker images
    
    REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
    mysql               5.7                 dd0afb9bc4a9        3 days ago          408MB
    mysql               latest              dd0afb9bc4a9        3 days ago          408MB
    
    

    启动MySQL服务器

    $ docker run --name=mysql -e MYSQL_ROOT_PASSWORD=root -v /app/mysql:/var/lib/mysql -d mysql
    

    --name=mysql 这个属性是为启动的MySQL容器设置一个别名

    -d 以守护进程方式运行 (后台运行)

    -e MYSQL_ROOT_PASSWORD在启动MySQL的时候设置密码,这里密码以root演示

    -v /app/mysql/:/var/lib/mysql 通过Volume把容器内的文件映射到物理机

    查看MySQL的日志

    $ docker logs mysql
    

    连接MySQL服务器

    $ docker exec -it mysql mysql -u root -p
    

    提示输入密码的时候,输入刚刚创建的时候指定的密码就ok了。现在你就能随意使用的MySQL服务器咯。

    修改 MySQL密码:$ ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

    容器管理

    $ docker restart mysql
    $ docker stop mysql
    $ docker start mysql
    $ docker rm mysql
    

    注意,当你想要使用docker rm mysql 之前,请记得先停止容器(docker stop mysql)的运行。

    相关文章

      网友评论

          本文标题:Docker部署(二):MySQL数据库

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